python TypeError:“Timestamp”对象不是iterab

2024-04-19 21:58:12 发布

您现在位置:Python中文网/ 问答频道 /正文

我有一个数据帧,并采取它的第一行。在

df = pd.DataFrame({'Date': ['2019-01-02', '2019-01-03', '2019-01-04', '01/07/2019', '01/08/2019', '01/09/2019', '01/10/2019', '01/11/2019', '01/14/2019', '24/08/2019']})

df['Date'] = pd.to_datetime(df["Date"]) 

a = df['Date'].iloc[0]

如果我只想用一个星期的时间来重复一次。我现在尝试使用continue,我需要一个循环。然而,每次循环使用它时,我要么得到TypeError:“Timestamp”对象不可读取

^{2}$

Tags: to数据对象dataframedfdatetimedate时间
1条回答
网友
1楼 · 发布于 2024-04-19 21:58:12

您正在尝试迭代单个值,其中需要整个列。可以通过删除.iloc[0]来修复:

a = df['Date']

这仍然不能让您的代码工作,因为您的weekday_end()函数本身将再次尝试迭代单个值,您只需使用:

^{pr2}$

然而,使用矢量运算要快得多:

df['Date'][df['Date'].dt.weekday < 6]

这会产生一系列工作日时间戳。如果要基于工作日选择数据帧中的行,请将筛选器应用于整个数据帧:

df[df['Date'].dt.weekday < 6]

相关问题 更多 >