6

私はRにかなり慣れていないので、データフレームの各エントリがベクトルになるようにデータフレームにベクトルを格納する方法があるかどうか疑問に思っていました.

エントリをベクターに割り当て、後で変更できるようにしたい:

df[2,]$Value <- c(1,2,0)
df[3,]$Value <- c(0,0,1)
df[3,]$Value <- df[3,]$Value + c(2,4,4)

ただし、データ フレーム内の 3 つの異なるエントリを置き換える場合にのみ、これを機能させることができます。これが可能かどうか誰にもわかりますか?

df: 
      V1    V2     V3 
1 c(1,2) c(2,3) c(0,0) 
2 c(1,1) c(0,0) c(2,2)
4

1 に答える 1

3

3D データ フレームを持つことはできません。これはさまざまな方法で実現できますが、概念的に説明する最も簡単な方法は、おそらくリスト内にリストを作成することです。

> entries <- list(V1=list(c(1,2), c(1,1)), V2=list(c(2,3), c(0,0)), V3=list(c(0,0),c(2,2)))
> entries
$V1
$V1[[1]]
[1] 1 2

$V1[[2]]
[1] 1 1


$V2
$V2[[1]]
[1] 2 3

$V2[[2]]
[1] 0 0


$V3
$V3[[1]]
[1] 0 0

$V3[[2]]
[1] 2 2

ここで、V1 の 2 番目のエントリを変更したいとします。

エントリ $V1[[2]] <- c(2,2)

また

エントリ[[1]][[2]] <- c(2,2)

于 2012-06-21T18:41:29.670 に答える