【发布时间】:2017-09-02 13:59:53
【问题描述】:
我在熊猫数据框中有如下年份数据:
0 06/09/1937
1 22/11/1972
我只想提取年份数据:
0 1937
1 1972
我的代码:
features["year"] = df["birth_date"].str.split('/',2)
features["year"] = features["year"][:2]
我得到一个错误:
ValueError: Can only tuple-index with a MultiIndex
然后我尝试了
features["year"] = [x[2] for x in features["year"]]
TypeError: 'float' 对象不可下标
我使用 Python 3。 你能告诉我这两个错误的原因以及如何纠正它们吗? 提前致谢。
【问题讨论】:
-
使用
pd.to_datetime将dtype转换为datetime然后你就可以使用链接的答案,就这么简单 -
嗨,链接的答案对我来说很好。顺便说一句,你能用一些语言解释一下我的问题中的这两个错误是如何产生的吗?@EdChum
-
这个
features["year"][:2]是无效语法,它认为您正在尝试索引多索引,这就是它引发错误的原因,另一个问题可能是因为您缺少值NaN所以你不能下标这个 -
谢谢 EdChum,你能给我一个元组索引和多索引的例子吗@EdChum?
-
请阅读docs所以不是用户论坛
标签: python-3.x pandas numpy multidimensional-array dataframe