热线电话:13121318867

登录
2019-01-21 阅读量: 862
panda DataFrame切片有一个KeyError

import pandas as pd

d = {'b' : 1, 'a' : 0, 'c' : 2}

c = {'one':[1,2,3], 'two':[4,5,6]}

p = pd.Series(d)

pc = pd.DataFrame(c)

print(p[-1]) # This line works

print(pc['two'][-1]) # This line does not work.

type(p) 是 pandas.core.series.Series

type(pc['two']) 是 pandas.core.series.Series

我的问题是p[-1]工作但pc['two'][-1]显示错误KeyError:-1我真的很困惑为什么pc['two'][-1]显示错误。

########################################################

我似乎找到了一个方法:尝试访问类似dict对象时,通常会遇到该错误,就像它是类似list对象一样。 p[-1]正在访问有序序列中的最后一项,如列表[0, 0, 1, 2, "dog"]

print(p[-1]) # dog

pc["two"]无法以这种方式访问​​(因为它看起来就像纯Python一样dict,从查看代码。)KeyError是运行以下代码时会遇到的异常:

p = {"dog": [0, 2]}

p[-1]

事实上,我认为任何关键dog都会抛出KeyError异常。dict无法以访问列表的方式访问类似对象(即整数索引)

0.0000
0
关注作者
收藏
评论(0)

发表评论

暂无数据
推荐帖子