我试图根据我在github中找到的内容创建一个SVM模型,但它不断返回这个错误。
Traceback (most recent call last):
File "C:\Users\Me\Documents\#e\projects\Sign-Language-Glove-master\modeling.py", line 22, in <module>
train_features = train[['F1','F2','F3','F4','F5','X','Y','Z','C1','C2']]
File "C:\Python27\lib\site-packages\pandas\core\frame.py", line 2934, in __getitem__
raise_missing=True)
File "C:\Python27\lib\site-packages\pandas\core\indexing.py", line 1354, in _convert_to_indexer
return self._get_listlike_indexer(obj, axis, **kwargs)[1]
File "C:\Python27\lib\site-packages\pandas\core\indexing.py", line 1161, in _get_listlike_indexer
raise_missing=raise_missing)
File "C:\Python27\lib\site-packages\pandas\core\indexing.py", line 1246, in _validate_read_indexer
key=key, axis=self.obj._get_axis_name(axis)))
KeyError: u"None of [Index([u'F1', u'F2', u'F3', u'F4', u'F5', u'X', u'Y', u'Z', u'C1', u'C2'], dtype='object')] are in the [columns]"
这是我的密码。
import pandas as pd
dataframe= pd.read_csv("lettera.csv", delimiter=',')
df=pd.DataFrame(dataframe)
from sklearn.model_selection import train_test_split
train, test = train_test_split(df, test_size = 0.2)
train_features = train[['F1','F2','F3','F4','F5','X','Y','Z','C1','C2']]
这些是csv文件的内容。
LABEL, F1, F2, F3, F4, F5, X, Y, Z, C1, C2
1, 631, 761, 739, 751, 743, 14120, -5320, 7404, 0, 0
1, 632, 759, 740, 751, 744, 14108, -5276, 7444, 0, 0
1, 630, 761, 740, 752, 743, 14228, -5104, 7680, 0, 0
1, 630, 761, 738, 750, 743, 14256, -5148, 7672, 0, 0
1, 632, 759, 740, 751, 744, 14172, -5256, 7376, 0, 0
1, 632, 759, 742, 751, 746, 14288, -5512, 7412, 0, 0
1, 632, 759, 742, 751, 744, 14188, -5200, 7416, 0, 0
1, 634, 759, 738, 751, 743, 14252, -5096, 7524, 0, 0
1, 630, 759, 739, 751, 743, 14364, -5124, 7612, 0, 0
1, 630, 759, 740, 751, 744, 14192, -5316, 7424, 0, 0
1, 631, 760, 739, 752, 743, 14292, -5100, 7404, 0, 0
1, 634, 759, 738, 751, 742, 14232, -5188, 7468, 0, 0
1, 632, 759, 740, 751, 744, 14288, -5416, 7552, 0, 0
1, 630, 760, 739, 752, 743, 14344, -5072, 7816, 0, 0
1, 631, 760, 739, 752, 743, 14320, -4992, 7444, 0, 0
1, 630, 762, 739, 751, 746, 14220, -5172, 7544, 0, 0
1, 630, 759, 739, 751, 742, 14280, -5176, 7416, 0, 0
1, 630, 760, 738, 752, 740, 14360, -5028, 7468, 0, 0
1, 632, 759, 738, 752, 741, 14384, -5108, 7364, 0, 0
1, 629, 757, 737, 751, 741, 14224, -5108, 7536, 0, 0
1, 629, 758, 740, 751, 744, 14412, -5136, 7956, 0, 0
1, 629, 761, 740, 750, 744, 14468, -4868, 7100, 0, 0
1, 629, 760, 738, 752, 741, 14504, -4964, 6600, 0, 0
1, 629, 758, 738, 749, 741, 14440, -5112, 6828, 0, 0
1, 629, 760, 738, 752, 741, 14484, -5016, 7556, 0, 0
谢谢你。
我在尝试使用apply()
results在数据帧上创建新列时遇到了相同的错误 :
>>> df[["foo","bar"]] = df.apply(lambda r: ["foobar","baz"], axis=1)
"None of [Index(['foo', 'bar'], dtype='object')] are in the [columns]"
解决方案是简单地使用result\u type=“expand”
参数作为apply()
:
df[["foo","bar"]] = df.apply(lambda r: ["foobar","baz"], axis=1, result_type="expand")
我在这个答案上找到了这个解决方案,值得投票。
在我的例子中,这是因为我的数据框中的列名有空格。我在df中重命名了列名,用_< /code>替换了空格。
# remove special character
df.columns = df.columns.str.replace(' ', '')
问题是列名中有空格;以下是我在保存您的数据并像您那样加载数据帧时得到的结果:
df.columns
# result:
Index(['LABEL', ' F1', ' F2', ' F3', ' F4', ' F5', ' X', ' Y', ' Z', ' C1',
' C2'],
dtype='object')
因此,将这些空格放回列名中可以消除错误:
train_features = train[[' F1',' F2',' F3',' F4',' F5',' X',' Y',' Z',' C1',' C2']] # works OK
但可以说,在列名中使用空格并不是一种好的做法(您已经看到了可能发生的情况!);因此,最好在加载过程中消除它们。以下是实现这一点的端到端代码(还消除了不必要的第二个数据帧):
import pandas as pd
df= pd.read_csv("lettera.csv", delimiter=',', header=None, skiprows=1, names=['LABEL','F1','F2','F3','F4','F5','X','Y','Z','C1','C2'])
from sklearn.model_selection import train_test_split
train, test = train_test_split(df, test_size = 0.2)
train_features = train[['F1','F2','F3','F4','F5','X','Y','Z','C1','C2']] # works OK
法典:- 错误 我试图在列和它们的前陈列室价格之间画一个箱线图。前展厅价格的值是分类的,因此,我首先将它们转换为整数,然后尝试绘制箱线图,但它会抛出错误,关键错误:“None of [Int64Index...] dtype='int64]在列中。
将测试和列车数据输入ROC曲线图时,我收到以下错误: KeyError:“[Int64Index([0,1,2,…dtype='int64',length=1323])中没有一个在[columns]中” 错误似乎是说它不喜欢我的数据格式,但它在第一次运行时起作用,我无法让它再次运行。 我是否错误地拆分数据或将格式错误的数据发送到函数中? 阅读几个StackOverflow帖子与相同的KeyErro
这是我的数据帧: 我试着用它做一个非常简单的情节: 但我一直收到一条关键错误消息: 我尝试将列[a]转换为日期时间,但仍然收到相同的错误消息。
有人可以解释为什么这段代码: 引发此错误: 我看到了这个答案,但我的专栏长度是相等的。
我试图在管道上运行k-折叠交叉验证(标准化定标器,决策树分类器)。 首先,我导入数据。 然后对数据帧进行预处理 然后对特征和目标进行切片 并使用SMOTE来平衡数据 这是问题的一部分。 错误代码
我试图使用np.random.shuffle()方法对索引进行洗牌,但我一直收到一个我不理解的错误。如果有人能帮我解决这个问题,我将不胜感激。非常感谢。 当我在开始创建我的raw_csv_数据变量时,我尝试使用分隔符='、'和delim_空格=0,因为我认为这是另一个问题的解决方案,但它不断抛出相同的错误 这是我尝试洗牌索引时不断遇到的错误: getitem(self,key)中的~\Anacon