Я хочу изменить столбец «Месяц и день» в кадре данных панд Python с целого числа на строки с ведущими нулями.
То, что я хочу, здесь: вход здесь представлен в виде кадра данных панд:
Year Month Day
2018 1 1
2018 1 12
2018 1 18
2018 2 4
2018 2 1
2018 2 2
2018 2 12
2018 3 30
Я хочу сделать их такими:
Year Month Day
2018 01 01
2018 01 12
2018 01 18
2018 02 04
2018 02 01
2018 02 02
2018 02 12
2018 03 30
Мой метод довольно тупой и очень медленный.
def Import():
df = pd.read_csv('Transaction_data.csv',index_col=0)
n = len(df)
for i in range(n):
temp = df['Year'].loc[i]
df['Year'].loc[i] = str(temp)
for i in range(n):
temp = df['Month'].loc[i]
if temp<10:
df['Month'].loc[i] = '0'+str(temp)
else:
df['Month'].loc[i] = str(temp)
for i in range(n):
temp = df['Day'].loc[i]
if temp<10:
df['Day'].loc[i] = '0'+str(temp)
else:
df['Day'].loc[i] = str(temp)
return df
Также
pd.to_datetime(df['Month'],format='%d')
не поможет, так как to_datetime имеет только целые числа месяца [1,12]