Pandas - KeyError: '[] not in index' 训练 Keras 模型时
Posted
技术标签:
【中文标题】Pandas - KeyError: \'[] not in index\' 训练 Keras 模型时【英文标题】:Pandas - KeyError: '[] not in index' when training a Keras modelPandas - KeyError: '[] not in index' 训练 Keras 模型时 【发布时间】:2018-01-10 18:22:07 【问题描述】:我正在尝试根据我的数据集中的部分特征来训练 Keras 模型。我已经加载了数据集并提取了如下特征:
train_data = pd.read_csv('../input/data.csv')
X = train_data.iloc[:, 0:30]
Y = train_data.iloc[:,30]
# Code for selecting the important features automatically (removed) ...
# Selectintg important features 14,17,12,11,10,16,18,4,9,3
X = train_data.reindex(columns=['V14','V17','V12','V11','V10','V16','V18','V4','V9','V3'])
print(X.shape[1]) # -> 10
但是当我调用 fit 方法时:
# Fit the model
history = model.fit(X, Y, validation_split=0.33, epochs=10, batch_size=10, verbose=0, callbacks=[early_stop])
我收到以下错误:
KeyError: '[3 2 5 1 0 4] not in index'
我错过了什么?
【问题讨论】:
检查this thread。 【参考方案1】:keras
期望模型输入是 numpy
数组 - 而不是 pandas.DataFrame
s。试试:
X = train_data.iloc[:, 0:30].as_matrix()
Y = train_data.iloc[:,30].as_matrix()
由于as_matrix
方法将pandas.DataFrame
转换为numpy.array
。
【讨论】:
以上是关于Pandas - KeyError: '[] not in index' 训练 Keras 模型时的主要内容,如果未能解决你的问题,请参考以下文章
在 Spyder 中打开数据帧时出现 KeyError('pandas._libs.interval')