Python 3.x 月差YYYYMM
我在数据框中有两个日期列,它们是浮点型的,所以我将其转换为日期格式YYMM。现在我必须找出两个月之间的差异 他们。我尝试了下面的方法,但我发现了错误Python 3.x 月差YYYYMM,python-3.x,pandas,Python 3.x,Pandas,我在数据框中有两个日期列,它们是浮点型的,所以我将其转换为日期格式YYMM。现在我必须找出两个月之间的差异 他们。我尝试了下面的方法,但我发现了错误 df['Date_1'] = pd.to_datetime(df['Date_1'], format = '%Y%m%d').dt.strftime('%Y%m') #Convert float to YYYYMM Format df['Date_2'] = pd.to_datetime(df['Date_2'], format='%Y%m.0')
df['Date_1'] = pd.to_datetime(df['Date_1'], format = '%Y%m%d').dt.strftime('%Y%m') #Convert float to YYYYMM Format
df['Date_2'] = pd.to_datetime(df['Date_2'], format='%Y%m.0').dt.strftime('%Y%m') #Convert float to YYYYMM Format
df['diff'] = df['Date_1'] - df['Date_2'] #Gives error
我认为需要减去由以下因素产生的周期: 另一种解决方案是将日期转换为月份的第一天:
df['Date_1'] = pd.to_datetime(df['Date_1'], format = '%Y%m%d') - pd.offsets.MonthBegin()
df['Date_2'] = pd.to_datetime(df['Date_2'], format='%Y%m.0')
df['diff'] = df['Date_1'] - df['Date_2']
print (df)
Date_1 Date_2 diff
0 2015-08-01 2015-05-01 92 days
1 2016-08-01 2016-02-01 182 days
df['Date_1'] = pd.to_datetime(df['Date_1'], format = '%Y%m%d') - pd.offsets.MonthBegin()
df['Date_2'] = pd.to_datetime(df['Date_2'], format='%Y%m.0')
df['diff'] = df['Date_1'] - df['Date_2']
print (df)
Date_1 Date_2 diff
0 2015-08-01 2015-05-01 92 days
1 2016-08-01 2016-02-01 182 days