8
Nel mio dataframe
, il tempo è seprated in 3 colonne year
, month
, day
, come questo Python & Pandas: Mietitrebbie colonne in una data
Come posso convertire in date
, così posso fare il tempo analisi di seris?
posso fare questo:
df.apply(lambda x:'%s %s %s' % (x['year'],x['month'], x['day']),axis=1)
quali uscite
1095 1954 1 1
1096 1954 1 2
1097 1954 1 3
1098 1954 1 4
1099 1954 1 5
1100 1954 1 6
1101 1954 1 7
1102 1954 1 8
1103 1954 1 9
1104 1954 1 10
1105 1954 1 11
1106 1954 1 12
1107 1954 1 13
ma ciò che segue?
UPDATE: Questo è ciò che io alla fine con:
from datetime import datetime
df['date']= df.apply(lambda x:datetime.strptime("{0} {1} {2}".format(x['year'],x['month'], x['day']), "%Y %m %d"),axis=1)
df.index= df['date']
Mi dà 'NameError: nome di 'x' non è defined' , qual è il problema? – cqcn1991
Mancava la variabile di espressione lambda utilizzata dal dataframe. sento ancora come se fosse forzato ma fammi sapere se funziona. – FirebladeDan
Penso che forse dovremmo convertire in 'datetime', non' time'? – cqcn1991