r-选择矩阵中与行相对应的列



所以我有一个大的协方差矩阵。我想选择某些行,然后让它选择正确的对应列。例如:

data(data)
data
lng   lat     x1 x2 x3 x4 x5 x6 x7 x8 x9 x10
-97.5 69.5    .5 .8 .9 .1 .5 .3 .2 .4 .6 .2
-101.5 49.5    .5 .8 .9 .1 .5 .3 .2 .4 .6 .2
-98.5 89.5    .5 .8 .9 .1 .5 .3 .2 .4 .6 .2
-97.5 49.5    .5 .8 .9 .1 .5 .3 .2 .4 .6 .2
-107.5 79.5   .5 .8 .9 .1 .5 .3 .2 .4 .6 .2
-92.5 29.5    .5 .8 .9 .1 .5 .3 .2 .4 .6 .2
-97.5 48.5    .5 .8 .9 .1 .5 .3 .2 .4 .6 .2
-91.5 19.5    .5 .8 .9 .1 .5 .3 .2 .4 .6 .2
-97.5 37.5    .5 .8 .9 .1 .5 .3 .2 .4 .6 .2
-80.5 39.5    .5 .8 .9 .1 .5 .3 .2 .4 .6 .2

这是一个协方差矩阵,所以x1=lng-97.5,lat 69.5,依此类推。现在我有

section_data <- subset(data, -97.5 <= lng & lng <= -80.5 & 35.5 <= lat & lat <= 49.5)

这就是第4、7、8、9、10行。这给了我

 lng   lat     x1 x2 x3 x4 x5 x6 x7 x8 x9 x10
-97.5 49.5    .5 .8 .9 .1 .5 .3 .2 .4 .6 .2
-97.5 48.5    .5 .8 .9 .1 .5 .3 .2 .4 .6 .2
-91.5 19.5    .5 .8 .9 .1 .5 .3 .2 .4 .6 .2
-97.5 37.5    .5 .8 .9 .1 .5 .3 .2 .4 .6 .2
-80.5 39.5    .5 .8 .9 .1 .5 .3 .2 .4 .6 .2

但它并没有删除相应的列。我希望给我行4,7,8,9,10,但只给我列4,7,8,,9,10。

 lng   lat     x4 x7 x8 x9 x10
-97.5 49.5    .1 .2 .4 .6 .2
-97.5 48.5    .1 .2 .4 .6 .2
-91.5 19.5    .1 .2 .4 .6 .2
-97.5 37.5    .1 .2 .4 .6 .2
-80.5 39.5    .1 .2 .4 .6 .2

我找了又找,但找不到任何答案来帮助我解决问题。如果有任何帮助,我将不胜感激。谢谢

Indices = with(data, 
              which(-97.5 <= lng & lng <= -80.5 & 35.5 <= lat & lat <= 49.5))
Rows = Indices
Columns = Indices + 2
Columns = c(1:2, Columns)
section_data <- data[Rows,Columns]

相关内容

  • 没有找到相关文章

最新更新