Я прочитал файл CSV в Pandas. Я пытаюсь проиндексировать этот DataFrame, передав список логических значений в этот DataFrame. Насколько я понимаю, ilo c используется для индексации DataFrame на основе индексации / позиции, и он рассматривает оставшийся список логических значений как «False», если он не соответствует длине вашего DataFrame. Длина моего DataFrame составляет 8399, и я передаю список логических значений 7, чтобы проиндексировать его по строкам и показать все столбцы. Ошибка с этой ошибкой: Элемент неправильной длины 7 вместо 8399.
---------------- -------------------------------------------------- --------- IndexError Traceback (последний последний вызов) в 5 6 market_df = pd.read_csv ("global_sales_data / market_fact.csv") ----> 7 market_df.iloc [[True, True, False , True, True, False, True]]
~ / opt / anaconda3 / lib / python3 .7 / site-packages / pandas / core / indexing.py в getitem ( self, key) 1422 1423 Maybe_callable = com.apply_if_callable (key, self.obj) -> 1424 return self._getitem_axis (Maybe_callable, axis = axis) 1425 1426 def _is_scalar_access (self, key: Tuple):
~ / opt / anaconda3 / lib / python3 .7 / site-packages / pandas / core / indexing.py в _getitem_axis (self, key, axis) 2142, если com.is_bool_indexer (ключ): 2143 self._validate_key (ключ, ось) -> 2144 вернуть self._getbool_axis (ключ, ось = ось) 2145 2146 # список целых чисел
~ / opt / anaconda3 / lib / python3 .7 / site-packages / pandas / core /indexing.py в _g etbool_axis (self, key, axis) 1436 # вызывающая сторона отвечает за обеспечение ненулевой оси 1437 label = self.obj._get_axis (axis) -> 1438 key = check_bool_indexer (метки, ключ) 1439 inds, = key.nonzero () 1440 try:
~ / opt / anaconda3 / lib / python3 .7 / site-packages / pandas / core / indexing.py в check_bool_indexer (index, key) 2422, если len (result)! = Len (index): 2423 повысить IndexError (-> 2424 "Элемент неправильной длины {} вместо {}.". Формат (len (результат), len (index)) 2425) 2426
IndexError: Элемент неправильной длины 7 вместо 8399.