python - 单行而不是列上的日期时间
问题描述
我有一个 df,其中单个日期在列中具有基础值。带有日期的行中也有一些名称。
我想将单行中的日期转换为日期时间(当前存储为字符串)。
一种解决方案——虽然不是它的粉丝——按其他列(字符串)索引,然后转置表将日期(现在在列中)转换为日期时间,然后再次转置。样本数据-
日期存储为字符串,我希望它们是日期时间。
想知道有没有更好的方法。
C N D 12-10 12-11 12-12
1 NW NW NW 19 12 16
2 NW NW NW 11 14 18
3 NW NW NW 45 46 93
解决方案
import datetime
df = pd.DataFrame({'C':['NW','NW','NW'],'N':['NW','NW','NW'],'D':['NW','NW','NW'],'12-10':[19,11,45],'12-11':[12,14,46],'12-12':[16,18,93]})
cols_to_datetime = [datetime.datetime.strptime(x+'-2020','%m-%d-%Y') for x in df.columns[3:]]
df.columns = df.columns[0:3].to_list() + cols_to_datetime
推荐阅读
- scheme - 方案 if 表达式返回 '#
' 如果正文包含表达式 - unit-testing - 返回 Mono/Flux 的 Spring webflux 单元测试方法
- regex - 请提出一种更有效的方法来执行以下正则表达式,它适用于小数据,但对于大数据集它不起作用
- java - 子集总和问题:返回所需子集的变体
- javascript - 如何防止ckeditor在页面中加载多个content.css
- python - Gif 后跟输入语句时使脚本崩溃
- c# - 在具有表锁的数据库中生成带有验证的随机密钥
- java - java中函数的导数
- regex - 如何使用 sed 或 awk 在一行中分离重复模式,并将它们保存到行中?
- r - `fourfoldplot` 在列标签中没有正确显示大小和颜色