0
の列数を参照することにより、結果のリストを割り当て、あなたがdata.frame
に保存されている2つのシミュレーションの結果2つの分布持って想像:今data.table
sim1 = 1:10
sim2 = 91:100
sim = data.frame(sim1, sim2)
を、我々は10%を見つけたいです各分布の90%パーセンタイル。 Iが基準(:=
)によって割り当てることによってdata.table
にこれらの結果を保存したい
diffSim = ncol(sim)
confidenceInterval = c(0.1, 0.9)
results = lapply(1:diffSim, function(j) {quantile(sim[, j], confidenceInterval,
names = FALSE, type = 3)})
:これは、ことによって行うことができます。しかし、まず、results
を適切な形(すなわち、1行4列のデータテーブル)にする必要があります。そうするために、私はその後results
にunlist
、matrix
とas.data.table
を適用します。
DT = data.table(Col1 = "Result")
DT[, c("col2", "col3", "col4", "col5") := as.data.table(matrix(unlist(results), nrow = 1))]
私は、このすべてが好きではありません。これを行うためのより短い方法がありますか?
なぜ "1行4列"? – MichaelChirico
@MichaelChirico、「DT」は他の行も含んでいるため – koteletje