1

私はデータフレームを持っています。

temp = data.frame(a=c(1,2,3,4),b=c(6,7,8,9),c=c(10,11,12,13))
> temp
a b  c
1 1 6 10
2 2 7 11
3 3 8 12
4 4 9 13

列「a」と「c」の2行目と4行目を抽出したいのですが、これは次のことを意味します。

a c
2 11
4  13

この「a」と「c」は入力中に変化する可能性があり、より多くの列名を持つことができるので、次のようなリストに入れます。

t <- c("a","c")
output <- c(output,temp[2,t])
output <- c(output,temp[4,t])

しかし、それは私を返しました

> f
$a
[1] 2

$c
[1] 11

$a
[1] 4

$c
[1] 13

私が欲しいのは

a c
2 11
4  13
4

1 に答える 1

1

私の質問へのコメントでAnandaMahtoが答えたように、行と列の名前をベクトルに格納し、それらを使用して必要なデータを取得できます。

> i <- c(2,4)
> ee <- c("a","c")
> temp[i, ee]
  a  c
2 2 11
4 4 13
于 2012-12-18T06:37:21.943 に答える