【问题标题】:Python : change datetime formatPython:更改日期时间格式
【发布时间】:2020-05-05 16:02:56
【问题描述】:

我有这个 Pandas 数据框:

我想将日期格式从“%d/%m/%y”更改为“%m/%d/%y”

all_data["Date demande1"]=all_data["Date demande"].apply(lambda x: datetime.strftime(pd.to_datetime(x), "%m/%d/%Y"))

我试过这个功能,它适用于某些行而其他行不行??

【问题讨论】:

  • 我看到的是您的数据不一致。索引 2、4 和 5 不可能是 m/d/y,因此月份和日期已切换。会不会是您的“需求日期”专栏中有些日期是 m/d/y 格式,有些日期是 d/m/y?
  • df['date'].dt.strftime('%m/%d/%Y') ?
  • 'Date demande' 的格式是 '%d/%m/%Y %H:%M' - 例如,如果你让 pandas 解析这个(月份来默认情况下首先)。正如@Datanovice 评论的那样,只需使用all_data["Date demande1"]=all_data["Date demande"].dt.strftime('%m/%d/%Y') 来获取一列按您想要的格式设置的字符串,假设all_data["Date demande"] 是日期时间类型的列。
  • @GauravAgarwal 这不可能是真的,因为它会自动保存

标签: python pandas dataframe datetime


【解决方案1】:
all_data["Date demande1"]=all_data["Date demande"].apply(lambda x: datetime.strftime(pd.to_datetime(x, format="%d/%m/%Y %H:%M", errors='ignore'), "%m/%d/%Y"))

【讨论】:

  • 谢谢,但我试过了,它给了我一个错误“ValueError:未转换的数据仍然存在:”
  • errors='ignore' 作为参数添加到to_datetime() 函数
  • 它也不起作用“TypeError:描述符'strftime'需要'datetime.date'对象但收到'str'”
猜你喜欢
  • 2015-12-27
  • 1970-01-01
  • 2020-08-23
  • 2013-06-29
  • 2017-05-13
  • 2015-08-04
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多