我正试图在R中获取我的数据子集。我试过这个,但是我得到了意想不到的结果!
>str(data)
num [1:500, 1:2000] 5.65
>y<-c("rowname1" , "rowname2", ... )
> spotA<-data[y]
NULL
> spotA
[1] NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA
我也尝试了以下方式:
>spotA<-data[c("rowname1" , "rowname2", ... )]
我得到了上述结果。我期望的是使用数字条目获得尺寸为16 2000的sotA,而不是NA!有人可以帮助我,我的错误在哪里?
答案 0 :(得分:1)
试试这个:
data<-as.data.frame(matrix(runif(20),nrow=10,ncol=2));
y<-paste("row",row.names(data),sep=".")
row.names(data)<-y
data;
V1 V2
row.1 0.3108385 0.09000282
row.2 0.3254967 0.44500053
row.3 0.3993356 0.71400316
row.4 0.2039391 0.11712378
row.5 0.4105687 0.70830021
row.6 0.5245575 0.36039628
row.7 0.2277783 0.71712201
row.8 0.6282813 0.33950400
row.9 0.1005018 0.94331287
row.10 0.3843297 0.58610738
data[row.names(data)%in%y[c(2,4,5,8,9)],]
V1 V2
row.2 0.3254967 0.4450005
row.4 0.2039391 0.1171238
row.5 0.4105687 0.7083002
row.8 0.6282813 0.3395040
row.9 0.1005018 0.9433129