有比 dt.weekofyear 更好的解决方案吗?
Is there a better solution thant dt.weekofyear?
有没有比df['weekofyear'] = df['date'].dt.weekofyear
更好的解决方案?
这个解决方案的问题是,有时,在 n 年的最后一周之后但在 n+1 年的第一周之前的几天被计为第 1 周而不是第 0 周。
我正在使用 pyspark 和 koalas(不允许 pandas)。
这是一个例子:
如您所见,第一列是日期,第二列是周,第三列是月,最后是年。
不确定这是否是您想要的...?我想您可以使用 case when
来替换一年中不需要的星期值。
df['weekofyear'] = df['date'].dt.weekofyear
df2 = ks.sql("""
select
date,
case when weekofyear = 1 and month = 12 then 53 else weekofyear end as weekofyear,
month,
year
from {df}""")
有没有比df['weekofyear'] = df['date'].dt.weekofyear
更好的解决方案?
这个解决方案的问题是,有时,在 n 年的最后一周之后但在 n+1 年的第一周之前的几天被计为第 1 周而不是第 0 周。
我正在使用 pyspark 和 koalas(不允许 pandas)。
这是一个例子:
如您所见,第一列是日期,第二列是周,第三列是月,最后是年。
不确定这是否是您想要的...?我想您可以使用 case when
来替换一年中不需要的星期值。
df['weekofyear'] = df['date'].dt.weekofyear
df2 = ks.sql("""
select
date,
case when weekofyear = 1 and month = 12 then 53 else weekofyear end as weekofyear,
month,
year
from {df}""")