python - 在 Pandas 数据框中编辑列的快速方法
问题描述
我有一个大约 400 万行的数据框。
A B C
1 2 '2019-12-30'
3 4 '03/04/2020'
C 列包含字符串格式的日期,并且有两种类型的变体。我正在尝试规范化此列,以便时间格式相同。现在我正在做以下事情。
def fixDate(x):
if '/' in x:
return datetime.datetime.strptime(x, '%d/%m/%Y')
else:
return datetime.datetime.strptime(x, '%Y-%m-%d')
df['C'] = df['C'].apply(fixDate)
有没有更好的方法来完成我想做的事情?这感觉相当笨重和缓慢。谢谢
解决方案
你可以通过to_datetime
pd.to_datetime(df.C.str.strip("'"),dayfirst=True)
Out[238]:
0 2019-12-30
1 2020-04-03
Name: C, dtype: datetime64[ns]
推荐阅读
- webpack - BigCommerce Checkout window.stencilBootstrap 不是函数
- xcode - Xcode 助手编辑器被锁定
- bash - 将环境变量传递给 jenkins 管道 bash 脚本
- r - 按字符加入 dplyr 中的数据帧
- python - 如何创建叶图
- android - 在 Android 中有没有办法查看/更改电池输出功率和频率
- c# - 自动签署所有编译的输出文件
- angular - 使用角度服务在多个组件中设置超时
- java - 如何从层次结构中至少删除两个级别的任何内容中隐藏 java 包
- postgresql - 如何将 Postgres 数据库从已安装的磁盘复制到实时 Postgres 服务器