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

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

考虑基数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