2017-05-29 3 views
1

Ich habe Verkaufsinformationen für verschiedene Arten von Teilen unterschiedlicher Dauer. Ich möchte den Unterschied in Monaten, wenn mein Datum im Format "YYYYMM" ist. Ich habe das versucht.Pandas-Gruppe nach Anzahl der Monate zwischen der Anzahl der Monate

(data.YYYYMM.max() - data.YYYYMM.min() 

die mich Unterschied in days.how gibt kann ich diesen Unterschied in Monaten.

Antwort

1

Sie Spalte to_datetime konvertieren und dann to_period:

df = pd.DataFrame({'YYYYMM':['201505','201506','201508','201510']}) 

print (df) 
    YYYYMM 
0 201505 
1 201506 
2 201508 
3 201510 

df['YYYYMM'] = pd.to_datetime(df['YYYYMM'], format='%Y%m').dt.to_period('m') 

a = df.YYYYMM.max() - df.YYYYMM.min() 
print (a) 
5 
+0

Perfect! Danke. Diese Antwort zu akzeptieren. Pandas hat nicht viel Dokumentation über dt.to_period. Wie alle Optionen und Beispiele. – Hima

+0

Einige Informationen sind in [docs] (http://pandas.pydata.org/pandas-docs/stable/timeseries.html#converting-between-representations), aber es ist ein bisschen versteckt. Vielen Dank. – jezrael

Verwandte Themen