Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
B
bcom-tp-etl-transformation-pipelines
Project
Project
Details
Activity
Releases
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
general
bcom-tp-etl-transformation-pipelines
Commits
d5c367db
Commit
d5c367db
authored
Jun 02, 2023
by
Cristian Aguirre
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
Update DAG-TACOMVENTAS-PROMOCIONESRESIDENCIAL-02-06-23
parent
a227e2ae
Changes
1
Show whitespace changes
Inline
Side-by-side
Showing
1 changed file
with
9 additions
and
6 deletions
+9
-6
dag_transformacion_tacomventas_promoresidencial.py
dags/dag_transformacion_tacomventas_promoresidencial.py
+9
-6
No files found.
dags/dag_transformacion_tacomventas_promoresidencial.py
View file @
d5c367db
...
...
@@ -62,12 +62,13 @@ def dag1_id3(tacom: pd.DataFrame, promo: pd.DataFrame) -> pd.DataFrame:
promo
.
drop
(
"CD_PAQUETE"
,
axis
=
1
,
inplace
=
True
)
promo
=
promo
.
drop_duplicates
([
"CUENTA"
,
"CD_PAQUETE_PROMO"
])
result
=
tacom
.
merge
(
promo
,
how
=
'left'
,
left_on
=
[
"CD_CUENTA"
,
"CD_PAQUETE"
],
right_on
=
[
"CUENTA"
,
"CD_PAQUETE_PROMO"
])
result
[
"CD_PAQUETE
_PROMO"
]
=
result
[
"CD_PAQUETE_PROMO
"
]
.
astype
(
str
)
result
[
"CD_PAQUETE
"
]
=
result
[
"CD_PAQUETE
"
]
.
astype
(
str
)
no_consider
=
"Adicional|Soundbox|SOUNDBOX"
result
[
"PROMOCION"
]
=
np
.
where
((
result
[
"CD_PAQUETE_PROMO"
]
.
isna
())
|
(
result
[
"CD_PAQUETE_PROMO"
]
==
"None"
)
|
(
result
[
"CD_PAQUETE_PROMO"
]
==
"nan"
),
None
,
np
.
where
((
result
[
"CD_PAQUETE_PROMO"
]
.
notna
())
&
(
result
[
"CD_PAQUETE_PROMO"
]
.
str
.
len
()
<=
5
),
"3P a 2P"
,
aa
=
result
[
result
[
"CD_PAQUETE"
]
.
str
.
len
()
<=
5
]
result
[
"PROMOCION"
]
=
np
.
where
((
result
[
"CD_PAQUETE"
]
.
isna
())
|
(
result
[
"CD_PAQUETE"
]
==
"None"
)
|
(
result
[
"CD_PAQUETE"
]
==
"nan"
),
None
,
np
.
where
((
result
[
"CD_PAQUETE"
]
.
notna
())
&
(
result
[
"CD_PAQUETE"
]
.
str
.
len
()
<=
5
),
"3P a 2P"
,
np
.
where
((
result
[
"NOMBRE_PRODUCTO"
]
.
str
.
contains
(
"TV"
,
na
=
False
))
&
(
~
result
[
"NOMBRE_PRODUCTO"
]
.
str
.
contains
(
no_consider
,
na
=
False
)),
"Parrilla"
,
np
.
where
((
result
[
"NOMBRE_PRODUCTO"
]
.
str
.
contains
(
"CANALES"
,
na
=
False
))
&
...
...
@@ -119,7 +120,7 @@ def dag1_id6(df: pd.DataFrame, notpromo: pd.DataFrame, key_field: str) -> pd.Dat
df_without_paq
=
df
[
~
df
[
"CD_PAQUETE"
]
.
isin
(
not_promo_values
)]
df_with_paq
=
df
[
df
[
"CD_PAQUETE"
]
.
isin
(
not_promo_values
)]
df_with_paq
[
"NRO_PAQUETE"
]
=
df_with_paq
.
groupby
([
"CD_FOLIO"
,
"CD_PAQUETE"
])
.
cumcount
()
+
1
df
=
pd
.
concat
([
df_with_paq
,
df_without_paq
]
)
.
reset_index
(
drop
=
True
)
df
=
pd
.
concat
([
df_with_paq
,
df_without_paq
]
,
ignore_index
=
True
)
except
Exception
as
e
:
logger
.
error
(
f
"Error DAG1_ID6. {e}"
)
finally
:
...
...
@@ -239,7 +240,9 @@ def set_dag_1():
import
yaml
from
yaml.loader
import
SafeLoader
conf_path
=
"/root/airflow/dags/app_conf.yml"
# Cambiar conf_path dependiendo del ambiente, en prod usando k8 y contenedores usar /opt/airflow/dags/app_conf.yml
# En desarrollo, cualquiera que apunte a su carpeta dags
conf_path
=
"/opt/airflow/dags/app_conf.yml"
with
open
(
conf_path
)
as
f
:
data
=
yaml
.
load
(
f
,
Loader
=
SafeLoader
)
general_cnf
=
data
[
"general"
]
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment