从DataFrame中的列创建日期时间

时间:2018-11-30 17:42:52

标签: datetime dataframe

我有一个包含这些列的DataFrame:

year month  day gender  births

我要基于列的年,月和日创建一个新的列类型“日期”:“ yyyy-mm-dd”

我才刚刚开始使用Python,但我不知道该如何进行...

2 个答案:

答案 0 :(得分:0)

您可以使用.assign 例如:

df2 = df.assign(ColumnDate = df.Column1.astype(str)+'-'+ df.Column2.astype(str)+'-'df.Column3.astype(str))

这很简单,如果您有大量数据,它比lambda快得多。

答案 1 :(得分:0)

假设您正在使用熊猫创建数据框,则可以尝试:

>>> import pandas as pd

>>> df = pd.DataFrame({'year':[2015,2016],'month':[2,3],'day':[4,5],'gender':['m','f'],'births':[0,2]})

>>> df['dates'] = pd.to_datetime(df.iloc[:,0:3])

>>> df
   year  month  day gender  births      dates
0  2015      2    4      m       0 2015-02-04
1  2016      3    5      f       2 2016-03-05

取自示例here和切片(iloc使用)“选择距熊猫10分钟” here的“选择”部分。