全部版块 我的主页
论坛 数据科学与人工智能 数据分析与数据科学 R语言论坛
14933 16
2013-06-10
如题,用R做相关分析,输出的结果是什么属性呢?矩阵(matrix)?数组(array)?那么如获得其中任何一个相关系数对应的变量名呢?
比如说,我对X1 X2 X3做了相关分析,得到一个矩阵形式的表,现在我想用代码输出下面的文字”X1和X2显著相关“,这个结论的话可以根据相关系数的出来,但是怎么能自动的传递X1,X2这两个变量名到输出函数呢?貌似有点乱,希望大家能看懂……
二维码

扫码加我 拉你入群

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

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

全部回复
2013-6-10 12:24:06
我也在学习R,试着把输出的矩阵转换成一个数据框,然后用attach(),names()函数调用。
x1 <- 1:10
x2 <- 2:11
x3 <- 10:1
df<- data.frame(x1,x2,x3)
data.cor <- cor(df)
attach(df)
p <- 0.5
for(i in 1:3){
   for(j in 1:3)
   {
       if(data.cor[i,j] >= p)
       {
       points <- c(names(df),names(df[j]))
       print(points)
       }
   }   
}


希望能有所帮助。
二维码

扫码加我 拉你入群

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

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

2013-6-10 14:28:44
Ben910128 发表于 2013-6-10 12:24
我也在学习R,试着把输出的矩阵转换成一个数据框,然后用attach(),names()函数调用。
x1
多谢老兄回答了。但是我试了,不行,直接提示rcor.test的结果不能转化为data frame.
二维码

扫码加我 拉你入群

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

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

2013-6-11 08:08:12
如果输出结果是矩阵,直接用colnames()就好
二维码

扫码加我 拉你入群

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

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

2013-6-11 10:10:19
hugebear 发表于 2013-6-11 08:08
如果输出结果是矩阵,直接用colnames()就好
输出结果确实是矩阵,我用class()看了的,返回值是matrix。我是4个变量的相关分析,得到的是一个4*4的矩阵,但是最上面的一行和最左边的一列都是变量名。我现在想首先从矩阵中找到符合条件的相关系数(比如>0.5的),然后获取对应的变量名(就是说满足条件的值是哪两个变量的相关关系),然后以一定的格式输出。
二维码

扫码加我 拉你入群

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

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

2013-6-11 13:33:09
把数据和你的程序运行结果贴出来胜于千言万语。。。。
二维码

扫码加我 拉你入群

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

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

点击查看更多内容…
相关推荐
栏目导航
热门文章
推荐文章

说点什么

分享

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