将整数或浮点数转换为年?
Convert Integer or Float to Year?
我正在尝试将 Integer 类型的列转换为 Year。这是我的情况:
Original Column: June 13, 1980 (United States)
我把它分割成
Year Column: 1980
在这里,我尝试使用:
df['Year'] = pd.to_datetime(df['Year'])
它更改了列,使年份与原始列不同。例如,
Original Year
1980 1970
2000 1970
2016 1970
期待您的帮助。提前谢谢你。
此致,
图乐
如果需要年份的日期时间,则意味着还添加了month=1
和day=1
添加format
参数,这里%Y
for YYYY
:
df['Year'] = pd.to_datetime(df['Year'], format='%Y')
print (df)
Original Year
0 1980 1970-01-01
1 2000 1970-01-01
2 2016 1970-01-01
df['Year'] = df['Original'].astype(str).astype('datetime64')
print(df)
打印:
Original Year
0 1980 1980-01-01
1 2000 2000-01-01
2 2016 2016-01-01
我正在尝试将 Integer 类型的列转换为 Year。这是我的情况:
Original Column: June 13, 1980 (United States)
我把它分割成
Year Column: 1980
在这里,我尝试使用:
df['Year'] = pd.to_datetime(df['Year'])
它更改了列,使年份与原始列不同。例如,
Original Year
1980 1970
2000 1970
2016 1970
期待您的帮助。提前谢谢你。
此致, 图乐
如果需要年份的日期时间,则意味着还添加了month=1
和day=1
添加format
参数,这里%Y
for YYYY
:
df['Year'] = pd.to_datetime(df['Year'], format='%Y')
print (df)
Original Year
0 1980 1970-01-01
1 2000 1970-01-01
2 2016 1970-01-01
df['Year'] = df['Original'].astype(str).astype('datetime64')
print(df)
打印:
Original Year
0 1980 1980-01-01
1 2000 2000-01-01
2 2016 2016-01-01