【发布时间】:2016-04-20 15:08:30
【问题描述】:
我正在尝试使用以下代码从 ISLR 缩放 Hitters 数据:
data = Hitters
apply(data,2,function(x) sum(is.na(x)))
data = subset(data, !is.na(Salary))
apply(data,2,function(x) sum(is.na(x)))
maxs <- apply(data, 2, max)
mins <- apply(data, 2, min)
scaled <- as.data.frame(scale(data, center = mins, scale = maxs - mins))
其中,我从thisR-Bloggers 神经网络教程中提取(我正在尝试使用 NN 为 Hitters 数据中的薪水建立一个预测模型)。但是,我不断收到错误消息:
> scale(data, center = mins, scale = maxs - mins)
Error in scale.default(data, center = mins, scale = maxs - mins) :
length of 'center' must equal the number of columns of 'x'
我在 Stackoverflow 上阅读了有关此比例函数错误 here 的讨论,但不明白为什么我会收到此错误,因为 maxs 和 mins 与我的矩阵具有相同的列,即 Hitters 数据。
【问题讨论】:
-
你的最大值和最小值的结果都是字符。在
scale中如何使用这些值? -
您尝试最大/最小的一些值是字符变量。联赛、分区、新联赛...
-
League、Division和NewLeague都是因子。这导致结果变成字符串。
标签: r neural-network scale