0

だから私は大きな共分散行列を持っています。特定の行を選択して、対応する正しい列を選択させたい。例えば:

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

検索して検索しましたが、私の質問に役立つ答えが見つかりませんでした。助けていただければ幸いです。ありがとう!

4

1 に答える 1

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]
于 2013-06-24T15:54:58.577 に答える