为啥我不能从我的 DataFrame 中的“日期”列中提取月份的列? [复制]
Posted
技术标签:
【中文标题】为啥我不能从我的 DataFrame 中的“日期”列中提取月份的列? [复制]【英文标题】:Why can't I make a column with extracted months from the 'dates' column in my DataFrame? [duplicate]为什么我不能从我的 DataFrame 中的“日期”列中提取月份的列? [复制] 【发布时间】:2019-08-08 02:29:44 【问题描述】:我有一个带有日期的数据框,我想在每一行中创建一个只有对应日期月份的列。首先,我将日期转换为 ts 对象,如下所示:
df['Date'] = pd.to_datetime(df['Date'])
在那之后,我尝试像这样制作我的新专栏:
df['Month'] = df['Date'].month
但是,它给了我一个错误:
AttributeError: 'Series' 对象没有属性 'month'
我不明白为什么我不能这样做。我仔细检查了转换为 ts 对象是否确实有效,并且确实有效。此外,如果我使用切片提取 1 个日期,我可以附加 .month 来获取月份。从技术上讲,我可以通过遍历所有索引然后对每个索引进行切片来解决问题,但是我的数据框包含 166000+ 行,所以这不是一个选项。
【问题讨论】:
使用df['Month'] = df['Date'].dt.month
查看this的答案。
非常感谢! @jezrael
【参考方案1】:
你必须使用属性(或访问器对象)dt
df["month"] = df.date.dt.month
【讨论】:
以上是关于为啥我不能从我的 DataFrame 中的“日期”列中提取月份的列? [复制]的主要内容,如果未能解决你的问题,请参考以下文章
为啥我不能从我的 UICollectionView 中删除图像?
如果我可以从我的私人 IP 地址访问本地文件,为啥我不能从我的公共 IP 地址访问本地文件?