pandas - KeyError:“[Index(['Company'], dtype='object')] 均不在 [columns] 中”
问题描述
给定每个公司排名的箱线图,我正在尝试为每个标准创建一系列图表。
我的数据如下所示: 原始数据
我的代码是这样的:
import pandas
data= pandas.read_csv(r"C:\Users\Steven\Desktop\ELNResults2.csv", nrows=(145))
criteriadata= data.groupby("Criteria")
criteriadata.boxplot(column=['Company'])
我收到此错误:
KeyError: "None of [Index(['Company'], dtype='object')] are in the [columns]"
但是,当我运行它时。
print(data.columns)
我明白了:
Index(['Company', 'Criteria', 'Ranking'], dtype='object')
所以对我来说,这看起来像公司在列中?
我是初学者,所以我还在学习。作为旁注,我不喜欢我发现的所有教程都使用像 linspace 这样的脚本创建的数据集,而不是导入数据集。我发现这并不能模仿现实生活中发生的事情,我在生物技术行业工作时发现 99.9% 的数据都是 csv。
解决方案
boxplot
在pandas groupby 上使用该方法时,column
参数指的是 DataFrame 中的列,该列包含将绘制分布的数字数据。我相信你所关心的是传递"Company"
给by
参数而不是将其传递给column
参数,而"Ranking"
应该是应该传递给column
参数的列名(尽管在这种情况下,使用column
参数是无关紧要的,因为你只剩下一列包含数字数据)。可以总结如下:
criteriadata.boxplot(column="Ranking", by="Company")
推荐阅读
- javascript - 在 NUXT js 中创建可以接受和设置唯一值的自定义复选框
- android - OpenCV haarCascade whit 光流跟踪
- python - 绘制多臂强盗的奖励值
- mysql - MySQL - 如何获取过去 7 天的每一天的记录数?
- mysql - 在 POPSQL 上删除带有外键的约束
- java - 我在线程“main”java.util.NoSuchElementException 中的 java 代码异常中收到此错误
- python-3.x - connect() 得到了一个意外的关键字参数 'sock'
- reactjs - 为自定义输入字段实现一个清除按钮,以使用反应挂钩表单触发所需的错误
- javascript - 如何单击表格中的下拉菜单元素
- javascript - 如何在 JavaScript 中比较数据库中的日期