apply() 関数から複数の値を返し、それらを R の別々の列に配置したいのですが、エラーが発生し続けます。私がやろうとしていることはこれです:
experiments$result1, experiments$result2, experiments$result3 <- apply(experiments, 1,
function(row)
#Some analysis here
#return x, y, and z for column result1, result2, and result3
x, y, z
)
たぶん、これは問題に対する間違ったアプローチです。Experiments は、複数のデータ列を含むデータ フレームです。各行の分析結果である列を追加したいのですが、Rの慣用的ではないループなしでそれを行う方法がわかりません。事前に助けてくれてありがとう。
したがって、ここにいくつかのより正確なコードがあります。
experiments$result1, experiments$result2, experiments$result3 <- apply(experiments, 1, function(row)
x <- row["startingTemp"]*2
y <- row["startingTemp"]*3
z <- row["startingTemp"]*4
return (list(x, y, z))
)
「startingTemp」フィールドは、「実験」データ フレームの列の 1 つです。タイプ「クロージャー」がサブセット化可能ではなく、オブジェクト「z」が見つからないというエラーが表示されます。