获取此“KeyError:不再支持将listlikes传递到.loc或[]以及任何缺少的标签”

2024-10-02 22:34:27 发布

您现在位置:Python中文网/ 问答频道 /正文

我希望在“RIDAGEYR”大于等于时,从“BPXSY1”的前100行的另一个数据帧df中找到并创建一个测试数据帧df1;60.

我尝试以下方法(Python 3.8.8):

df1 = df[df.RIDAGEYR > 60].loc[range(0, 100)]

但请记住:

Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
  File "/Users/wel51x/opt/anaconda3/lib/python3.8/site-packages/pandas/core/indexing.py", line 895, in __getitem__
    return self._getitem_axis(maybe_callable, axis=axis)
  File "/Users/wel51x/opt/anaconda3/lib/python3.8/site-packages/pandas/core/indexing.py", line 1113, in _getitem_axis
    return self._getitem_iterable(key, axis=axis)
  File "/Users/wel51x/opt/anaconda3/lib/python3.8/site-packages/pandas/core/indexing.py", line 1053, in _getitem_iterable
    keyarr, indexer = self._get_listlike_indexer(key, axis, raise_missing=False)
  File "/Users/wel51x/opt/anaconda3/lib/python3.8/site-packages/pandas/core/indexing.py", line 1266, in _get_listlike_indexer
    self._validate_read_indexer(keyarr, indexer, axis, raise_missing=raise_missing)
  File "/Users/wel51x/opt/anaconda3/lib/python3.8/site-packages/pandas/core/indexing.py", line 1321, in _validate_read_indexer
    raise KeyError(
KeyError: "Passing list-likes to .loc or [] with any missing labels is no longer supported. The following labels were missing: Int64Index([ 0,  2,  4,  5,  7,\n            ...\n            95, 96, 97, 98, 99],\n           dtype='int64', length=72). See https://pandas.pydata.org/pandas-docs/stable/user_guide/indexing.html#deprecate-loc-reindex-listlike"

当其他人有类似的问题需要重新编制索引时,我从阅读他们的文章中意识到了这一点;但是,多次尝试修复都会产生相同的结果

非常感谢您的帮助


Tags: incorepandaslibpackageslinesiteusers