pandas 如何将周/年(10/2018)转换为日期格式

3mpgtkmj  于 2022-12-09  发布在  其他
关注(0)|答案(1)|浏览(116)

我有Pandas Dataframe 的格式为10/2018,10代表一年中的星期,2018代表一年。我如何将它们转换为完整的日期,这将是2018年3月5日
周/年日期2018年10月2018年3月5日
我有Pandas Dataframe 的格式为10/2018,10代表一年中的星期,2018代表一年。我如何将它们转换为完整的日期,这将是2018年3月5日
请帮助我为相同的。我已经尝试了多种选择,但似乎没有工作
week/year Date
10/2018 05-03-2018

tried this:df_2018_to_2022['TimeDesc'] = pd.to_datetime((df_2018_to_2022['week']-1).astype(str) + "6", format="%Y%U%w")

错误:

OutOfBoundsDatetime: Out of bounds nanosecond timestamp: 1020-04-29 00:00:00
0lvr5msh

0lvr5msh1#

下面是一个带有pandas.to_datetime的命题:

out = (
        df
          .join(df["week/year"].str.split("/", expand=True))
          .assign(date= lambda x: pd.to_datetime(x.pop(1).astype(str) + x.pop(0).astype(str) + "1",
                                                 format='%G%V%w').dt.strftime("%d-%m-%Y"))
      )
​
#输出:
print(out)

  week/year        date
0   10/2018  05-03-2018
  • 使用的 Dataframe :*
print(df)

  week/year
0   10/2018

相关问题