全部版块 我的主页
论坛 数据科学与人工智能 数据分析与数据科学 R语言论坛
5572 5
2016-10-02
悬赏 5 个论坛币 已解决
现在有一个data.frame类型的数据A,A有3列。现在我想实现的效果是将A的每一列数据进行最大—最小标准化之后赋值给新的data.frame B。可能对于各位大神来说,这个问题太简单了,但我刚开始学习R,自己能想到的是使用个循环函数,但总是报错。
for(i in 1:3){
B[,i]<-(A[,i]-min(A[,i]))/(max(A[,i])-min(A[,i]))
}
请问大神们,这个功能该如何实现呢?我这个方法错在哪里呢?非常感谢!

最佳答案

jgchen1966 查看完整内容

请找本在R 中数据操作的书!!
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

全部回复
2016-10-2 17:41:48
jzq1994 发表于 2016-10-2 21:28
谢谢,但是如何只操作X的三列呢?因为X的其他列有0-1变量,并不需要标准化
请找本在R 中数据操作的书!!
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

2016-10-2 20:13:39
yda<-as.data.frame(lapply(X,function(x) (x-min(x))/(max(x)-min(x))))
X 为data.frame
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

2016-10-2 21:28:12
jgchen1966 发表于 2016-10-2 20:13
yda
谢谢,但是如何只操作X的三列呢?因为X的其他列有0-1变量,并不需要标准化
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

2016-10-3 05:50:13
复制代码


二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

2016-10-3 08:07:15
你没有B的申明,在循环前面加一句
B = A
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

相关推荐
栏目导航
热门文章
推荐文章

说点什么

分享

扫码加好友,拉您进群
各岗位、行业、专业交流群