python - 获取 TypeError:列表索引必须是整数或切片,而不是 str
问题描述
我在 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)]
解决方案
这df3
是list of DataFrames
,因为由列表理解创建。
因此,如果可能,您可以将所有 DataFrame 连接在一起:
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)]
另一个想法是分别处理每个 DataFrame:
for df in df3:
df4 = df3[df3['Unnamed: 11'].str.contains("tele", na=False)]
...
...
推荐阅读
- javascript - 添加我的应用 ID 和单元 ID 后,广告没有出现
- android - 如果使用具有链请求的唯一工作,则 WorkStatus 为 BLOCKED
- php - URL 重写内部服务器错误
- python - 如何从 OpenCV 图像而不是 numpy 数组中获取 TIFF 字节流?
- powershell - Powershell,从目录中的前 100 个文件创建存档
- java - Java 8+流:检查我的对象实例的两个字段的列表是否正确
- bash - 有什么作用。/opt/pat/staging/config/VARIABLES>>/dev/null 做什么?
- typescript - Visual Studio 2017 中的 Typescript d.ts 文件
- javascript - JS - 循环对象数组并输出属性
- debugging - 仅适用于在 Android 上远程调试 JS