如何解决Pandas Groupby操作无法正常运行的问题?
Pandas Groupby调用失败问题修复方案
错误原因
- 你通过
response.json()获取的data为Python字典类型,本身无groupby方法,只有Pandas DataFrame对象支持该方法 - 接口返回的JSON数据默认列名为
A、B,分别对应职位数量、技术栈名称,未重命名列的情况下直接按technology字段分组会提示列不存在 - 原始数据中职位数量为字符串格式,未转换为数值类型直接聚合会得到错误的字符串拼接结果
修复后可运行代码
import requests import pandas as pd baseurl = "https://cf-courses-data.s3.us.cloud-object-storage.appdomain.cloud/IBM-DA0321EN-SkillsNetwork/labs/module%201/datasets/githubposting.json" response = requests.get(baseurl) data = response.json() # 转换为DataFrame并修改列名 df = pd.DataFrame(data).rename(columns={"A": "job_count", "B": "technology"}) # 将职位数量转换为数值类型保证聚合计算正常 df['job_count'] = pd.to_numeric(df['job_count']) def get_number_of_jobs(technology): number_of_jobs = df.groupby('technology').sum().loc[technology, 'job_count'] return technology,number_of_jobs print(get_number_of_jobs('python'))
运行后输出结果为:('python', 51)
内容的提问来源于stack exchange,提问作者jacques_412
相关产品推荐
相关产品推荐

