相关疑难解决方法(0)

R中迭代构造的数据帧

我对R来说比较新,并且想知道迭代构造数据帧的最有效方法(一次一行,迭代次数"n"和每行"l"的长度事先已知).

  1. 创建空数据框,每次迭代添加一行
  2. 预分配nxl数据帧,每次迭代修改一行
  3. 预分配nxl矩阵,每次迭代修改一行,从矩阵中生成数据帧
  4. 还有别的

r s-plus dataframe

12
推荐指数
1
解决办法
8234
查看次数

R中的快速子集

我有一个大小为30000 x 50的数据帧数据.我还有一个单独的列表,其中包含来自此数据帧的行分组,例如,

rows <- list(c("34", "36", "39"), c("45", "46"))
Run Code Online (Sandbox Code Playgroud)

这表示具有rownames(不是数字行indeces,但是字符rownames(dat))"34","36","39"的数据帧行构成一个分组,而"45","46"构成另一个分组.

现在我想将数据框中的分组拉出到并行列表中,但我的代码(下面)非常非常慢.我怎样才能加快速度?

> system.time(lapply(rows, function(r) {dat[r, ]}))
   user  system elapsed 
 246.09    0.01  247.23 
Run Code Online (Sandbox Code Playgroud)

这是在一台非常快的计算机上,R 2.14.1 x64.

r dataframe

7
推荐指数
2
解决办法
7571
查看次数

标签 统计

dataframe ×2

r ×2

s-plus ×1