相关疑难解决方法(0)

在大型data.table中替换NA的最快方法

我有一个大的data.table,在其大约200k行和200列中分散了许多缺失值.我想尽可能有效地将这些NA值重新编码为零.

我看到两个选项:
1:转换为data.frame,并使用类似这样的东西
2:某种很酷的data.table子设置命令

我会对类型1的相当有效的解决方案感到满意.转换为data.frame然后返回data.table不会花费太长时间.

performance r dataframe data.table

137
推荐指数
7
解决办法
6万
查看次数

对特定列的data.table行进行求和

我有一个大数据表(来自包data.table)有超过60列(前三个对应于因子,剩下的响应变量,在这种情况下是不同的物种)和几行对应于不同的处理水平和物种丰富.一个非常小的版本看起来像这样:

library(data.table)
TEST <- data.table(Time=c("0","0","0","7","7","7","12"),
             Zone=c("1","1","0","1","0","0","1"),
             quadrat=c(1,2,3,1,2,3,1),
             Sp1=c(0,4,29,9,1,2,10),
             Sp2=c(20,17,11,15,32,15,10),
             Sp3=c(1,0,1,1,1,1,0))

setkey(TEST,Time)
TEST

#    Time Zone quadrat Sp1 Sp2 Sp3
# 1:    0    1       1   0  20   1
# 2:    0    1       2   4  17   0
# 3:    0    0       3  29  11   1
# 4:   12    1       1  10  10   0
# 5:    7    1       1   9  15   1
# 6:    7    0       2   1  32   1
# 7:    7    0       3   2  15   1
Run Code Online (Sandbox Code Playgroud)

我首先想要计算每个Zone x quadrat组合的每个物种的平均丰度,这很好: …

r data.table

11
推荐指数
2
解决办法
1万
查看次数

在data.table中创建新列

我在R中的data.table中有几列(字面意思)命名为A1,A2,A3,... A50.不幸的是,我表中的列不是按字母顺序排列的.

我想创建一个名为sumA的新列,它将包含A1 + A2 + ... + A50.

这样做的简单(而不是乏味)方式是什么?

r data.table

2
推荐指数
1
解决办法
109
查看次数

标签 统计

data.table ×3

r ×3

dataframe ×1

performance ×1