如何在R中将相关矩阵中的相关值四舍五入到小数点后零位?


要找到相关矩阵,我们只需要使用cor函数和数据框对象名称。例如,如果我们有一个名为df的数据框,则可以使用cor(df)找到相关矩阵。但是结果将有太多小数位来表示相关性。如果我们想避免小数点后的值,我们可以使用round函数。

考虑base R中的mtcars数据 -

示例

 在线演示

data(mtcars)
cor(mtcars)

输出

      mpg           cyl        disp        hp         drat          wt
mpg    1.0000000  -0.8521620  -0.8475514  -0.7761684   0.68117191   -0.8676594
cyl   -0.8521620   1.0000000   0.9020329   0.8324475  -0.69993811    0.7824958
disp  -0.8475514   0.9020329   1.0000000   0.7909486  -0.71021393    0.8879799
hp    -0.7761684   0.8324475   0.7909486   1.0000000  -0.44875912    0.6587479
drat   0.6811719  -0.6999381  -0.7102139  -0.4487591   1.00000000   -0.7124406
wt    -0.8676594   0.7824958   0.8879799   0.6587479  -0.71244065    1.0000000
qsec   0.4186840  -0.5912421  -0.4336979  -0.7082234   0.09120476   -0.1747159
vs     0.6640389  -0.8108118  -0.7104159 - 0.7230967   0.44027846   -0.5549157
am     0.5998324  -0.5226070  -0.5912270  -0.2432043   0.71271113   -0.6924953
gear   0.4802848  -0.4926866  -0.5555692  -0.1257043   0.69961013   -0.5832870
carb  -0.5509251   0.5269883   0.3949769   0.7498125  -0.09078980    0.4276059
      qsec          vs          am           gear       carb
mpg    0.41868403   0.6640389   0.59983243  0.4802848 -0.55092507
cyl   -0.59124207  -0.8108118  -0.52260705 -0.4926866  0.52698829
disp  -0.43369788  -0.7104159  -0.59122704 -0.5555692  0.39497686
hp    -0.70822339  -0.7230967  -0.24320426 -0.1257043  0.74981247
drat   0.09120476   0.4402785   0.71271113  0.6996101 -0.09078980
wt    -0.17471588  -0.5549157  -0.69249526 -0.5832870  0.42760594
qsec   1.00000000   0.7445354  -0.22986086 -0.2126822 -0.65624923
vs     0.74453544   1.0000000   0.16834512  0.2060233 -0.56960714
am    -0.22986086   0.1683451   1.00000000  0.7940588  0.05753435
gear  -0.21268223   0.2060233   0.79405876  1.0000000  0.27407284
carb  -0.65624923  -0.5696071   0.05753435  0.2740728  1.00000000

输出

         qsec       vs         am gear carb
 mpg   0.41868403  0.6640389  0.59983243  0.4802848 -0.55092507
cyl   -0.59124207 -0.8108118 -0.52260705 -0.4926866  0.52698829
 disp -0.43369788 -0.7104159 -0.59122704 -0.5555692  0.39497686
 hp   -0.70822339 -0.7230967 -0.24320426 -0.1257043  0.74981247
drat   0.09120476  0.4402785  0.71271113  0.6996101 -0.09078980
wt    -0.17471588 -0.5549157 -0.69249526 -0.5832870  0.42760594
qsec   1.00000000  0.7445354 -0.22986086 -0.2126822 -0.65624923
vs     0.74453544  1.0000000  0.16834512  0.2060233 -0.56960714
am    -0.22986086  0.1683451  1.00000000  0.7940588  0.05753435
gear  -0.21268223  0.2060233  0.79405876  1.0000000  0.27407284
carb  -0.65624923 -0.5696071  0.05753435  0.2740728  1.00000000

查找相关系数四舍五入到零的相关矩阵 -

示例

 在线演示

round(cor(mtcars),0)

输出

mpg  cyl  disp  hp  drat  wt   qsec vs am  gear carb
mpg    1  -1  -1  -1    1  -1   0    1   1    0   -1
cyl   -1   1   1   1   -1   1  -1   -1  -1    0    1
disp  -1   1   1   1   -1   1   0   -1  -1   -1    0
hp    -1   1   1   1    0   1  -1   -1   0    0    1
drat   1  -1  -1   0    1  -1   0    0   1    1    0
wt    -1   1   1   1   -1   1   0   -1  -1   -1    0
qsec   0  -1   0  -1    0   0   1    1   0    0   -1
vs     1  -1  -1  -1    0  -1   1    1   0    0   -1
am     1  -1  -1   0    1  -1   0    0   1    1    0
gear   0   0  -1   0    1  -1   0    0   1    1    0
carb  -1   1   0   1    0   0  -1  -1    0    0    1

考虑下面的数据框 -

示例

 在线演示

x1<-sample(rexp(5,1),20,replace=TRUE) x2<-sample(runif(5,1,2),20,replace=TRUE) x3<-sample(rnorm(4,0.95,0.04),20,replace=TRUE)
df_x<-data.frame(x1,x2,x3)
df_x

输出

x1 x2 x3
1 2.89702241 1.764443 0.9478372
2 0.89472590 1.764443 0.9850543
3 0.89472590 1.299860 0.9850543
4 0.07786123 1.377727 0.9661181
5 2.89702241 1.452261 0.9478372
6 0.22655315 1.452261 0.9850543
7 2.89702241 1.452261 0.9478372
8 2.89702241 1.764443 0.9661181
9 0.46248476 1.764443 0.9850543
10 0.22655315 1.452261 0.9731809
11 0.89472590 1.764443 0.9731809
12 0.46248476 1.764443 0.9661181
13 2.89702241 1.452261 0.9731809
14 0.07786123 1.377727 0.9661181
15 0.89472590 1.377727 0.9478372
16 0.07786123 1.180832 0.9731809
17 0.22655315 1.377727 0.9731809
18 0.22655315 1.764443 0.9478372
19 2.89702241 1.764443 0.9731809
20 0.46248476 1.452261 0.9661181

示例

cor(df_x)

输出

 x1     x2 x3
 x1 1.00000000 0.05458349 -0.2571943
 x2 0.05458349 1.00000000 -0.1760571
 x3 -0.25719426 -0.17605707 1.0000000

示例

round(cor(df_x),0)

输出

   x1 x2 x3
x1 1  0  0
x2 0  1  0
x3 0  0  1

更新于:2020年10月14日

4K+ 次浏览

启动你的职业生涯

通过完成课程获得认证

开始学习
广告