我试图对OSX命令行上的R.app中包含的数据集进行一些分析。我如何引用列?我通常在其他程序中使用$,但我在这里得到一个错误,说它对原子向量无效。我应该使用另一个操作员吗?
答案 0 :(得分:0)
并非所有内置数据集都属于data.frame
类。 Titanic
就是这样一个数据集。正如其帮助文件(? Titanic
)所描述的那样:
通过对4个变量进行交叉制表2201观察得到的4维数组。
您可以使用str
:
> str(Titanic)
table [1:4, 1:2, 1:2, 1:2] 0 0 35 0 0 0 17 0 118 154 ...
- attr(*, "dimnames")=List of 4
..$ Class : chr [1:4] "1st" "2nd" "3rd" "Crew"
..$ Sex : chr [1:2] "Male" "Female"
..$ Age : chr [1:2] "Child" "Adult"
..$ Survived: chr [1:2] "No" "Yes"
因此,您无法使用$
提取。相反,请使用[
索引,例如:
> Titanic[,'Male',,]
, , Survived = No
Age
Class Child Adult
1st 0 118
2nd 0 154
3rd 35 387
Crew 0 670
, , Survived = Yes
Age
Class Child Adult
1st 5 57
2nd 11 14
3rd 13 75
Crew 0 192
> Titanic[1,,,'Yes']
Age
Sex Child Adult
Male 5 57
Female 1 140