update des etl_capacities_weekdays.py
parent
2508b34ceb
commit
a6cbe3bc29
|
@ -8,6 +8,7 @@ d = data.load()
|
||||||
|
|
||||||
def property_capacities_weekdays(id: int, scrapeDate: str):
|
def property_capacities_weekdays(id: int, scrapeDate: str):
|
||||||
extractions = d.extractions_propId_scrapeDate(id, scrapeDate).pl()
|
extractions = d.extractions_propId_scrapeDate(id, scrapeDate).pl()
|
||||||
|
weekdays = ['Monday', 'Tuesday', 'Wednesday', 'Thursday', 'Friday', 'Saturday', 'Sunday']
|
||||||
df_calendar = pl.DataFrame()
|
df_calendar = pl.DataFrame()
|
||||||
numWeeks = 0
|
numWeeks = 0
|
||||||
|
|
||||||
|
@ -19,12 +20,15 @@ def property_capacities_weekdays(id: int, scrapeDate: str):
|
||||||
df_calendar = df_calendar.with_columns(pl.Series(name="dates", values=columnTitles))
|
df_calendar = df_calendar.with_columns(pl.Series(name="dates", values=columnTitles))
|
||||||
df_calendar = df_calendar.with_columns((pl.col("dates").str.to_date()))
|
df_calendar = df_calendar.with_columns((pl.col("dates").str.to_date()))
|
||||||
numWeeks = round((df_calendar.get_column("dates").max() - df_calendar.get_column("dates").min()).days / 7, 0)
|
numWeeks = round((df_calendar.get_column("dates").max() - df_calendar.get_column("dates").min()).days / 7, 0)
|
||||||
df_calendar = df_calendar.with_columns(pl.col("dates").dt.weekday().alias("weekday"))
|
df_calendar = df_calendar.with_columns(pl.col("dates").dt.weekday().alias("weekday_num"))
|
||||||
|
df_calendar = df_calendar.with_columns(pl.col("dates").dt.strftime("%A").alias("weekday"))
|
||||||
df_calendar = df_calendar.drop("dates")
|
df_calendar = df_calendar.drop("dates")
|
||||||
|
|
||||||
df_calendar = df_calendar.group_by("weekday").agg(pl.col("column_0").sum())
|
df_calendar = df_calendar.group_by(["weekday", "weekday_num"]).agg(pl.col("column_0").sum())
|
||||||
df_calendar = df_calendar.with_columns((pl.col("column_0") / numWeeks).alias("weekday"))
|
df_calendar = df_calendar.with_columns((pl.col("column_0") / numWeeks).alias("column_0"))
|
||||||
|
df_calendar = df_calendar.sort('weekday_num')
|
||||||
|
df_calendar = df_calendar.drop('weekday_num')
|
||||||
|
print(df_calendar)
|
||||||
|
|
||||||
result = {"scraping-date": scrapeDate, "weekday": df_calendar['weekday'].to_list(), 'capacities': df_calendar['column_0'].to_list()}
|
result = {"scraping-date": scrapeDate, "weekday": df_calendar['weekday'].to_list(), 'capacities': df_calendar['column_0'].to_list()}
|
||||||
return result
|
return result
|
||||||
|
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue