Traceback (most recent call last):
File "", line 1, in
data.loc[colsel]
~~~~~~~~^^^^^^^^
File "C:\Users\japolo\AppData\Local\miniconda3\envs\keras\Lib\site-packages\pandas\core\indexing.py", line 1207, in __getitem__
return self._getitem_axis(maybe_callable, axis=axis)
~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "C:\Users\japolo\AppData\Local\miniconda3\envs\keras\Lib\site-packages\pandas\core\indexing.py", line 1438, in _getitem_axis
return self._getitem_iterable(key, axis=axis)
~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^
File "C:\Users\japolo\AppData\Local\miniconda3\envs\keras\Lib\site-packages\pandas\core\indexing.py", line 1378, in _getitem_iterable
keyarr, indexer = self._get_listlike_indexer(key, axis)
~~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^
File "C:\Users\japolo\AppData\Local\miniconda3\envs\keras\Lib\site-packages\pandas\core\indexing.py", line 1576, in _get_listlike_indexer
keyarr, indexer = ax._get_indexer_strict(key, axis_name)
~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^
File "C:\Users\japolo\AppData\Local\miniconda3\envs\keras\Lib\site-packages\pandas\core\indexes\base.py", line 6302, in _get_indexer_strict
self._raise_if_missing(keyarr, indexer, axis_name)
~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "C:\Users\japolo\AppData\Local\miniconda3\envs\keras\Lib\site-packages\pandas\core\indexes\base.py", line 6352, in _raise_if_missing
raise KeyError(f"None of [{key}] are in the [{axis_name}]")
KeyError: "None of [Index(['coastal_blue', 'yellow', 'rededge', 'CCI', 'green_i', 'EVI', 'CCCI',\n 'nir', 'NDRE', 'blue', 'red', 'MSAVI'],\n dtype='str')] are in the [index]"
Как выбрать нужные столбцы из данных? Мне кажется, что имена в colsel совпадают с именами столбцов в data. Я знаю, что у ключевой ошибки есть символ новой строки в списке, но новая строка не находится ни в одном из элементов. Я использовал
>>> colsel ['coastal_blue', 'yellow', 'rededge', 'CCI', 'green_i', 'EVI', 'CCCI', 'nir', 'NDRE', 'blue', 'red', 'MSAVI'] >>> data.columns Index(['sev_wp', 'treatm', 'coastal_blue', 'blue', 'green_i', 'green', 'yellow', 'red', 'rededge', 'nir', 'NDVI', 'NDRE', 'EVI', 'MSAVI', 'GRVI', 'CCCI', 'CCI', 'PRSI', 'Date', 'mean_sev_wp', 'year'], dtype='str') [/code] Я хочу выбрать столбцы из данных с именами в colsel. Я попробовал [code]>>> data.loc[colsel][/code] и получите ошибку [code]Traceback (most recent call last): File "", line 1, in data.loc[colsel] ~~~~~~~~^^^^^^^^ File "C:\Users\japolo\AppData\Local\miniconda3\envs\keras\Lib\site-packages\pandas\core\indexing.py", line 1207, in __getitem__ return self._getitem_axis(maybe_callable, axis=axis) ~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\japolo\AppData\Local\miniconda3\envs\keras\Lib\site-packages\pandas\core\indexing.py", line 1438, in _getitem_axis return self._getitem_iterable(key, axis=axis) ~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^ File "C:\Users\japolo\AppData\Local\miniconda3\envs\keras\Lib\site-packages\pandas\core\indexing.py", line 1378, in _getitem_iterable keyarr, indexer = self._get_listlike_indexer(key, axis) ~~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^ File "C:\Users\japolo\AppData\Local\miniconda3\envs\keras\Lib\site-packages\pandas\core\indexing.py", line 1576, in _get_listlike_indexer keyarr, indexer = ax._get_indexer_strict(key, axis_name) ~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^ File "C:\Users\japolo\AppData\Local\miniconda3\envs\keras\Lib\site-packages\pandas\core\indexes\base.py", line 6302, in _get_indexer_strict self._raise_if_missing(keyarr, indexer, axis_name) ~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\japolo\AppData\Local\miniconda3\envs\keras\Lib\site-packages\pandas\core\indexes\base.py", line 6352, in _raise_if_missing raise KeyError(f"None of [{key}] are in the [{axis_name}]") KeyError: "None of [Index(['coastal_blue', 'yellow', 'rededge', 'CCI', 'green_i', 'EVI', 'CCCI',\n 'nir', 'NDRE', 'blue', 'red', 'MSAVI'],\n dtype='str')] are in the [index]" [/code] Как выбрать нужные столбцы из данных? Мне кажется, что имена в colsel совпадают с именами столбцов в data. Я знаю, что у ключевой ошибки есть символ новой строки в списке, но новая строка не находится ни в одном из элементов. Я использовал [code]colsel = [x.strip() for x in colsel][/code] чтобы убедиться, что в самих строках нет пробелов. Поэтому я не знаю, означает ли эта новая строка что-нибудь в этой ключевой ошибке.