python: pandas.DataFrame,如何避免keyerror?
Posted
技术标签:
【中文标题】python: pandas.DataFrame,如何避免keyerror?【英文标题】:python: pandas.DataFrame,how to avoid keyerror? 【发布时间】:2018-10-26 01:48:07 【问题描述】:在C++
中,当我在表中找不到关键字时,它会返回NULL
,或者在数据库中它会返回一个空表,因此程序继续运行。但是在python
中,它会抛出一个exception
,并中断我的程序。我可以避免吗?
例如,我有一个名为datevar
的DataFrame:
(datetimeIndex) value
2001-01-01 1
2001-01-02 1
2001-01-03 3
....
v = datevar.xs('2000-01-01', level='date') # of course "keyError"
v = datevar.loc['2000-01-01' , :] # of course "keyError"
【问题讨论】:
欢迎来到 ***。请花时间阅读how to provide a great pandas example 上的这篇文章以及如何提供minimal, complete, and verifiable example 并相应地修改您的问题。 how to ask a good question 上的这些提示也可能有用。datevar['2000-01-01']
工作得怎么样?
【参考方案1】:
我认为您可以检查该索引是否存在于 df 的索引或列中 在您获得该键的值之前。
df = pd.read_clipboard()
df
Out[6]:
(datetimeIndex) value
0 2001-01-01 1
1 2001-01-02 1
2 2001-01-03 3
key = "2000-01-01"
if key in df.index:
v = df.xs('2000-01-01', level='date') # of course "keyError"
v = df.loc['2000-01-01', :] # of course "keyError"
else:
v = None
v
【讨论】:
以上是关于python: pandas.DataFrame,如何避免keyerror?的主要内容,如果未能解决你的问题,请参考以下文章
python: pandas.DataFrame,如何避免keyerror?
Python数据分析库pandas ------ DataFrame
Python pandas.DataFrame.aggregate函数方法的使用