R 什么';访问表中的项有何错误?

R 什么';访问表中的项有何错误?,r,R,现在我想得到这个表的第一个元素中的数字2。我尝试了几种方法,但都失败了。我是R语言的初学者。有人能解释一下方法和原因吗?感谢您的帮助 表对象不是原子向量。原子向量不具有名称以外的属性,而表同时具有维度和dimnames data_table[1] # 1 # 2 class(table_data[1]) # [1] "integer" 表对象的索引非常类似于R数组 > attributes(data_table) $dim [1] 5 $dimnames $dimnames$da

现在我想得到这个表的第一个元素中的数字2。我尝试了几种方法,但都失败了。我是R语言的初学者。有人能解释一下方法和原因吗?感谢您的帮助

表对象不是原子向量。原子向量不具有名称以外的属性,而表同时具有维度和
dimnames

data_table[1]
# 1 
# 2 

class(table_data[1])
# [1] "integer"
表对象的索引非常类似于R数组

> attributes(data_table)
$dim
[1] 5

$dimnames
$dimnames$data
[1] "1" "2" "4" "5" "6"


$class
[1] "table"

尝试使用
名称(数据表)[2]
表格
可能会令人烦恼地混淆。您试图将其用作
数据.frame
,但实际上它是一个命名向量-它看起来就像有两行,而有一行有名称。尝试将
视为.data.frame(data\u table)
,它应该更清晰一些。
取消命名(data\u table)
以摆脱names@RichardScriven从技术上讲,共有5个
nrow(数据表)
首先感谢大家的回答。去年我甚至正确地回答了这个问题。我的大脑出现了问题,同意。你在Flick先生之后的回答甚至比我的评论“更正确”。
> attributes(data_table)
$dim
[1] 5

$dimnames
$dimnames$data
[1] "1" "2" "4" "5" "6"


$class
[1] "table"
> new_arr <- array(NA, 5)
> dim(new_arr)
[1] 5
> attributes(new_arr)
$dim
[1] 5
> class( data_table[2])
[1] "integer"
> class( data_table[2,drop=FALSE])
[1] "array"