count
2015-01 2
2015-02 1
2015-03 4
用於我試圖pd.groupby(B組,通過= [b.index.month,b.index.year])
但有對象有沒有屬性 '月' 錯誤
count
2015-01 2
2015-02 1
2015-03 4
用於我試圖pd.groupby(B組,通過= [b.index.month,b.index.year])
但有對象有沒有屬性 '月' 錯誤
應用sorted
與key
參數設置爲pd.to_datetime
df.assign(date=df.date.apply(sorted, key=pd.to_datetime))
id date
0 a [2015-02-01, 2015-03-01]
1 b [2015-03-01]
2 s [2015-01-01, 2015-03-01]
3 f [2015-01-01, 2015-01-01, 2015-03-01]
然後使用pd.value_counts
pd.value_counts(pd.to_datetime(df.date.sum()).strftime('%Y-%m'))
2015-03 4
2015-01 3
2015-02 1
dtype: int64
調試
你應該能夠複製並粘貼此代碼...請驗證其運行正常。
import pandas as pd
df = pd.DataFrame(dict(
id=list('absf'),
date=[
['2015-03-01', '2015-02-01'],
['2015-03-01'],
['2015-01-01', '2015-03-01'],
['2015-01-01', '2015-01-01', '2015-03-01']
]
))[['id', 'date']]
print(df.assign(date=df.date.apply(sorted, key=pd.to_datetime)))
print()
print(pd.value_counts(pd.to_datetime(df.date.sum()).strftime('%Y-%m')))
你應該會看到
id date
0 a [2015-02-01, 2015-03-01]
1 b [2015-03-01]
2 s [2015-01-01, 2015-03-01]
3 f [2015-01-01, 2015-01-01, 2015-03-01]
2015-03 4
2015-01 3
2015-02 1
dtype: int64
我不明白問題是什麼?你顯示了一個數據幀'df'。你是否在'df'上運行這個代碼?你也沒有提供足夠的信息來說明發生了什麼。 – piRSquared
@ d.doo查看我更新的答案的調試部分。 – piRSquared
df.assign(dt = df.dt.apply(sorted,key = pd.to_datetime))有TypeError:無法識別的值類型:
是否與實際日期對象或字符串? – piRSquared
日期在dataframe對象中是coloumn –