python - 有一个列表,需要一个 DataFrame 来使用 `loc` 按列值查找行
问题描述
我正在尝试从状态为“宾夕法尼亚州”的这些 CSV 中提取行:https ://github.com/CSSEGISandData/COVID-19/tree/master/csse_covid_19_data/csse_covid_19_daily_reports_us
我有这个代码:
import glob
import pandas as pd
df = []
path = "/home/reallymemorable/Documents/git/COVID-19/csse_covid_19_data/csse_covid_19_daily_reports_us/*.csv"
for fname in glob.glob(path):
row = df.loc[df['Province_State'] == 'Pennsylvania']
print(row)
我收到此错误:
AttributeError: 'list' object has no attribute 'loc'
我知道它需要一个 DataFrame,但我已经设置df
为一个列表。但我不知道如何使它成为 DataFrame 以便我的模式匹配正常工作。
我究竟做错了什么?
解决方案
在您的代码中,是您在开头定义df
的空列表,而不是 Pandas DataFrame。[]
您是否忘记加载数据:
path = "/home/reallymemorable/Documents/git/COVID-19/csse_covid_19_data/csse_covid_19_daily_reports_us/*.csv"
for fname in glob.glob(path):
df = pd.read_csv(fname) # this line???
row = df.loc[df['Province_State'] == 'Pennsylvania']
print(row)
推荐阅读
- java - 无法创建池的初始连接,无法获取 JDBC 连接错误
- java - 了解 Java 中的修饰符
- syntax - 将报表链接到子表单
- c# - Unity 中的调平
- javascript - 从 unsplash api 获取随机图像?
- html - 使用html和CSS匹配两个元素的中心
- asp.net-web-api - 为什么 .net 核心 web api 方法需要 HttpMethodAttribute 映射到相应的请求类型 Get/put/post/delete
- php - 需要在 Facebook Webhooks 中捕获评论通知
- java - Java - 找出两个重复数组之间的差异
- c# - 有什么方法可以将来自非主项目的文件包含在 outpot 文件夹中?