私は最初の列が英数字の行名である大きなデータフレームを持っています。私は各列(ここでは3行)の行のランダムな選択を選択するために、以下のようにidxを使用します。私は今、各idx [i、j]の累積合計を計算する必要があります。私のデータフレームは膨大なので、plyrパッケージの関数は計算時間のために優先されます。どのように私はそれを計算すべきですか?リストとして格納された行の名前に基づいてcumsumを計算する方法は?
library(plyr)
V1 <- c('t14','t23','t54', 't13', 't1','t102', 't104', 't245')
V2 <- c(4.2, 5.3, 5.4,6, 7,8.5,9, 10.1)
V3 <- c(5.1, 5.1, 2.4,6.1, 7.7,5.5,1.99, 5.42)
my_df <- data.frame(V1, V2, V3)
#The following line randomly select 3 rows for each column
idx <- lapply(integer(ncol(my_df)-1), function(...) sample(my_df$V1, 3))
おかげで
"私のデータフレームは膨大なので、計算時間のためにplyrパッケージの関数が優先されます" - 意味がありません。 plyrは、その巨大なデータセットに対して高速で拡張性があるわけではなく、シンプルさと使いやすさを考慮して使用します。 –