将月份和年份转换为日期时间

时间:2019-07-31 05:20:06

标签: python datetime

我有一个数据集,其中月份和年份分别作为列。我想用包含Day的Date创建一个新列,在这种情况下,它可能是每月的1号。

Month Year 
1     2013
1     2013
2     2013
2     2013
df['Date'] = pd.to_datetime(df['Month'])

预期输出:

Month Year Date
1     2013 1/1/2013
1     2013 1/1/2013
2     2013 1/2/2013
2     2013 1/2/2013

format = %d%m%y

3 个答案:

答案 0 :(得分:0)

您可以像这样在#include<bits/stdc++.h> using namespace std; int main(){ string s; cin>>s; int* last = new int[1000]; for(int i=0;i<s.length();i++){ cout<<last[s[i]]; } } 中指定格式:

to_datetime

答案 1 :(得分:0)

df = pd.DataFrame({'Month':[1,1,2,2], 'Year':[2013, 2013, 2013, 2013]})
# apply each single row with this lambda function
df['Date'] =  df.apply(lambda row: '1' + '/' + str(row.Month) + '/'+ str(row.Year), axis = 1)
print(df.to_string(index=False))

输出为

Month  Year      Date
    1  2013  1/1/2013
    1  2013  1/1/2013
    2  2013  1/2/2013
    2  2013  1/2/2013

答案 2 :(得分:0)

我尝试了一些方法,发现几乎所有结果都与您的要求相同,它们通常像这样01/02/2012。 如果您不喜欢“ 0”,可以尝试这种方式,但是有点复杂

temp = pd.DataFrame({"Year":df["Year"],"Month":df['Month'],"day":1})
a = pd.to_datetime(temp)
c = []
for item in a:
    c.append(str(item.day) + "/" + str(item.month) + "/" + str(item.year))
df['Date'] = c