开发者社区> 问答> 正文

Pandas 指定在日期时间使用哪些列

我有一个Pandas 数据框df:

df = pd.DataFrame({'year': [2018, 2018,2018,2018,2018,2018],
                   'month': [8, 8,8,8,8,8],
                   'day': [3,3,3,3,3,3],
                   'hour': [11, 12,12,9,7,2],                   
                   'minute': [00, 00,00,00,00,00],                                      
                   'second': [0, 0,0,0,0,0]})
df['X'] = [3,5,4,1,8,2]

然后,我指定一个转换为日期时间所需的属性列表(与df中的某些但并非全部匹配的列名匹配):L = ['year','month','day','hour', [分钟],[秒]]然后如何基于列表L中指定的属性获取日期时间列?

问题来源:stackoverflow

展开
收起
is大龙 2020-03-23 17:34:15 439 0
1 条回答
写回答
取消 提交回答
  • 按列表过滤列并传递给to_datetime:

    df['dates'] = pd.to_datetime(df[L])
    print (df)
       year  month  day  hour  minute  second  X               dates
    0  2018      8    3    11       0       0  3 2018-08-03 11:00:00
    1  2018      8    3    12       0       0  5 2018-08-03 12:00:00
    2  2018      8    3    12       0       0  4 2018-08-03 12:00:00
    3  2018      8    3     9       0       0  1 2018-08-03 09:00:00
    4  2018      8    3     7       0       0  8 2018-08-03 07:00:00
    5  2018      8    3     2       0       0  2 2018-08-03 02:00:00
    

    回答来源:stackoverflow

    2020-03-23 17:34:21
    赞同 展开评论 打赏
问答标签:
问答地址:
问答排行榜
最热
最新

相关电子书

更多
中文:即学即用的Pandas入门与时间序列分析 立即下载
即学即用的Pandas入门与时间序列分析 立即下载
低代码开发师(初级)实战教程 立即下载