Получение TypeError: списочные индексы должны быть целыми или кусочками, а не str - PullRequest
1 голос
/ 26 апреля 2020

Я довольно новичок в python, похоже, не могу заставить этот код работать, получая «TypeError: индексы списка должны быть целыми или кусочками, а не str» - помогите, пожалуйста! Спасибо за тонну

import pandas as pd 
from glob import glob
filenames = glob('abc*.xls')
df3 =[pd.read_excel(f) for f in filenames]
df4 = df3[df3['Unnamed: 11'].str.contains("tele", na=False)]

1 Ответ

1 голос
/ 26 апреля 2020

Здесь df3 равно list of DataFrames, потому что оно создано с помощью понимания списка.

Так что вы можете объединить все кадры данных, если это возможно:

df3 =[pd.read_excel(f) for f in filenames]
df33 = pd.concat(df3, ignore_index=True)
df4 = df33[df33['Unnamed: 11'].str.contains("tele", na=False)]

Другая идея заключается в обработке каждого кадра данных отдельно. :

for df in df3:
    df4 = df3[df3['Unnamed: 11'].str.contains("tele", na=False)]
    ...
    ...
...