1.[ ] [[ ]] 的区别
[ ] 产生一个子模式,子集(含有名字等),[[ ]] 产生元素。
对于向量,
> x=c(n1=1,n2=2,n3=3)
> x
n1 n2 n3
1 2 3
> x[1]
n1
1
> x[1][[1]]
[1] 1
> x[[1]]
[1] 1
>
对于list
> x=list(n1=c(2,3),n2=c(6,7,8))
> x
$n1
[1] 2 3
$n2
[1] 6 7 8
> x[1]
$n1
[1] 2 3
> x[[1]]
[1] 2 3
> x[['n1']]
[1] 2 3
> x[['n1']][1]
[1] 2
> x[['n1']][2]
[1] 3
> x['n1']
$n1
[1] 2 3
> x['n1'][[1]][2]
[1] 3
>
对于数组,对于矩阵,[] [[ ]] 的结果一致。
默认状态下,数组、矩阵都是按列排放数据,多维数组,序号排列时,后面的先保持不变,前面的用完,使用后面的。
对于数据框。
x[1,] 结果是list
x[,1]结果是vector
x[1]结果是子数据框,按照列的方式,取出数据。
x[1,2]行列数的方式取出数据。
> x=array(1:6,c(2,3))
> x=data.frame(x)
> x
X1 X2 X3
1 1 3 5
2 2 4 6
> x[1]
X1
1 1
2 2
> x[[1]]
[1] 1 2
> x[1][['X1']]
[1] 1 2
> x[1][['X1']][1]
[1] 1
> x[1][['X1']][2]
[1] 2
>
x[1,]$X3
[1] 5
本站仅提供存储服务,所有内容均由用户发布,如发现有害或侵权内容,请
点击举报。