所以我有一个很大的协方差矩阵。我想选择某些行,然后让它选择正确的相应列。 例如:
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和纬度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
我搜索和搜索但是找不到任何答案可以帮助我解决问题。 我将不胜感激任何帮助。 谢谢!
答案 0 :(得分:3)
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]