【问题标题】:How to add weekdays with year and month in pandas如何在熊猫中添加带有年份和月份的工作日
【发布时间】:2022-01-12 12:51:30
【问题描述】:

我正在尝试创建一个具有 dateformat

的年、月、工作日的列

2020-10-Thu2020-10-04 但是这两个数据都将采用日期格式,有什么办法可以做到这一点

【问题讨论】:

  • 你遇到了什么问题
  • 为什么要发截图而不是文字?什么是“日期格式”,你的意思是日期时间数据类型吗?你尝试了什么?
  • 我正在尝试创建带有星期的 DateTime 格式,但如果使用 strftime 和其他东西,它会将此日期时间转换为字符串 2020-10-Thu 我需要它应该是日期格式,无论如何这样做@MrFuppes
  • 好的,请您澄清一下,WOD 是什么意思?

标签: python pandas dataframe datetime dayofweek


【解决方案1】:

如果我正确理解了您的问题,您是否希望有一列包含 2020-10-Thu2020-10-04 格式的日期?如果是这种情况,下面的代码应该适合您(请注意 First FormatSecond Format 列最终是字符串类型,还请注意工作日以 1 开头,其中星期日标记为 0)。

from datetime import datetime
import pandas as pd

originalDates = pd.date_range(start="2020-02-02",end="2020-03-03")
firstFormat = pd.Series([datetime.strftime(x, '%Y-%m-%a') for x in originalDates])
secondFormat = pd.Series([datetime.strftime(x, '%Y-%m-%w') for x in originalDates])

frame = {'Original Dates': originalDates, 'First Format': firstFormat, 'Second Format': secondFormat}

df = pd.DataFrame(frame)

df 变量最终看起来像这样:

Original Dates First Format Second Format
2020-02-03 2020-02-Mon 2020-02-1
2020-02-04 2020-02-Tue 2020-02-2
2020-02-05 2020-02-Wed 2020-02-3

我确信有更好的方法可以做到这一点,但我目前不知道。

【讨论】:

  • 嘿,感谢您的解决方案和您的努力,我很感激,但数据是字符串格式,我需要日期格式的数据,有什么办法
  • @Noman 抱歉,我不知道该怎么做。我尝试使用 strptime() 函数将生成的字符串转换为 datetime 对象,但这会将日期的日期部分恢复为月份格式。
猜你喜欢
  • 2018-07-25
  • 2021-09-22
  • 2017-06-14
  • 1970-01-01
  • 1970-01-01
  • 2022-07-06
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多