0

ここで実際に簡単な質問があります。データのマトリックス (file1) があります (たとえば、20 列 x 100 行)。このように見える

A    B    C    D    E    F ...  
5    6    2    3    4    5 ...
5    6    2    3    4    5 ...
5    6    2    3    4    5 ...
5    6    2    3    4    5 ...
5    6    2    3    4    5 ...
.    .    .    .    .    .
.    .    .    .    .    .
.    .    .    .    .    .

「R」という名前の変数があります。

R <- c(A,C,E,F)

変数「R」に一致する列のみを含む新しいマトリックス (file2) を作成したい

簡単なコマンドだと思いますが、これを書く正しい方法が見つかりませんでした。ABCDEF は列名であり、最初の行ではないことに注意してください。

乾杯、

4

3 に答える 3

1

これを試して:

m <- matrix(rnorm(100), ncol = 10)
colnames(m) <- LETTERS[1:10]
myR <- c("A", "C", "D")
m2 <- m[,myR]
于 2013-01-11T12:07:09.673 に答える
1

列名を一致させたい場合:

Dataset <- data.frame(A=A,B=B,C=C,D=D,E=E,F=F)
R <- c("A","C","E","F")   
match(R,names(Dataset))

実際にRにデータセットA、C、E、Fが含まれている場合、名前は異なるが値のリストは同じである可能性があるため:

Dataset <- data.frame(A=A,B=B,C=C,D=D,E=E,F=F)
R <- data.frame(A=A,C=C,E=E,FF)   
which(match(names(R),names(Dataset)) & match(R,Dataset))
于 2013-01-11T12:11:45.797 に答える
1

これはどうですか?

R = c("A","C","E","F");
file2 = file1[,R];
于 2013-01-11T12:09:18.307 に答える