我对 R 非常陌生,有时会被代码卡住。我遇到了如下代码之一。下面的代码是什么-7
意思?
round(cor(longley[,-7]),3)
我理解:四舍五入,longley 作为data.frame,3:四舍五入的数字,但不是-7。
我对 R 非常陌生,有时会被代码卡住。我遇到了如下代码之一。下面的代码是什么-7
意思?
round(cor(longley[,-7]),3)
我理解:四舍五入,longley 作为data.frame,3:四舍五入的数字,但不是-7。
在上下文中,这意味着从数据框中[, -7]
删除第th 列(或从 th 中取出除第 th之外的所有列)。7
longley
7
longley
这是 R 101,您最好阅读一些介绍性材料。例如,这在 R随附的或可从 R 网站访问的《R简介》手册中很早就有介绍。或者你可以阅读?Extract
。
这是一个例子
> head(longley)
GNP.deflator GNP Unemployed Armed.Forces Population Year Employed
1947 83.0 234.289 235.6 159.0 107.608 1947 60.323
1948 88.5 259.426 232.5 145.6 108.632 1948 61.122
1949 88.2 258.054 368.2 161.6 109.773 1949 60.171
1950 89.5 284.599 335.1 165.0 110.929 1950 61.187
1951 96.2 328.975 209.9 309.9 112.075 1951 63.221
1952 98.1 346.999 193.2 359.4 113.270 1952 63.639
> names(longley)
[1] "GNP.deflator" "GNP" "Unemployed" "Armed.Forces" "Population"
[6] "Year" "Employed"
> names(longley)[7]
[1] "Employed"
> head(longley[, -7])
GNP.deflator GNP Unemployed Armed.Forces Population Year
1947 83.0 234.289 235.6 159.0 107.608 1947
1948 88.5 259.426 232.5 145.6 108.632 1948
1949 88.2 258.054 368.2 161.6 109.773 1949
1950 89.5 284.599 335.1 165.0 110.929 1950
1951 96.2 328.975 209.9 309.9 112.075 1951
1952 98.1 346.999 193.2 359.4 113.270 1952
该命令longley[,-7]
意味着:longley
除第 7 列之外的所有列。这称为负索引。
查看?Extract
更多信息。