【发布时间】:2022-01-26 19:58:06
【问题描述】:
以下代码失败,表示字段date2 没有month 属性,因为date2 的类型是Series,而它的类型显然是日期。我错过了什么?
错误是AttributeError: 'Series' object has no attribute 'month'
import pandas as pd
import dask
import dask.dataframe as dd
import datetime
pdf = pd.DataFrame({
'id2': [1, 1, 1, 2, 2],
'balance': [150, 140, 130, 280, 260],
'date2' : [datetime.datetime(2021,3,1), datetime.datetime(2021,4,1),
datetime.datetime(2021,5,1), datetime.datetime(2021,1,1),
datetime.datetime(2021,2,1)]
})
ddf = dd.from_pandas(pdf, npartitions=1)
def func2(df):
return df.date2.month
x = ddf.map_partitions(func2) # <-- fails here
【问题讨论】:
-
对dask不太熟悉,但如果它反映了pandas api - 那么它应该是
df.date2.dt.month