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)


暂无数据
推荐帖子
0条评论
0条评论
0条评论