【发布时间】:2017-11-22 19:45:04
【问题描述】:
我正在尝试清理一个庞大的数据集。在这个数据集中,我有 6 列代表从 1 到 10 的评级系统。所以第一列根据吸引力对一个人进行评分,第二列根据智力等。
attr1 attr2 attr3 attr4 attr5 attr6
2 5 6 8 7 2
5 9 6 9 7 3
9 8 7 5 8 6
... ...
我决定找出所有这些列的平均值并将其保存到一个新列中,然后删除这些列,所以现在我剩下的不是 (attr1 - attr6)...
avg_attr
5
6.5
7.166
...
代码是……
data['avg_attr'] = data[['attr1', 'attr2', 'attr3', 'attr4', 'attr5', 'attr6']].mean(axis=1)
# Convert columns to 1-dimensional Series array
series = data.columns.to_series()
# Attribute data can be dropped because we already have the total mean.
data = data.drop(series["attr1":"attr6"], axis=1)
..当我这样做时,我预计算法的准确性不会受到此更改的太大影响,而且我认为它具有使我的数据看起来更干净的额外好处。但是,在应用了这个改变之后,准确率下降了一点点,为什么会这样呢?是不是因为我的算法现在数据拟合不足?
另外,另一方面,我可以对这些属性做些什么来提高准确率?
【问题讨论】:
-
施瓦辛格和爱因斯坦在平均了他们的身体和智力吸引力之后并没有什么不同。你以为这只是清理? scnr
标签: pandas machine-learning neural-network bigdata prediction