Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/r/76.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
R列中的DataTable计数值_R_Data.table - Fatal编程技术网

R列中的DataTable计数值

R列中的DataTable计数值,r,data.table,R,Data.table,我在“cat”和“fox”中清洗计数0值,显示的尝试是“Count0”,但所需的输出是“WANT”库(data.table) 数据=数据表(“cat”=c(0,5,NA,0,0,0), “狐狸”=c(2,0,NA,NA,7,0)) cols库(data.table) 数据=数据表(“cat”=c(0,5,NA,0,0,0), “狐狸”=c(2,0,NA,NA,7,0)) cols我们可以使用: library(data.table) data=data.table("cat"=c(0,5,NA,

我在“cat”和“fox”中清洗计数0值,显示的尝试是“Count0”,但所需的输出是“WANT”

库(data.table)
数据=数据表(“cat”=c(0,5,NA,0,0,0),
“狐狸”=c(2,0,NA,NA,7,0))
cols
库(data.table)
数据=数据表(“cat”=c(0,5,NA,0,0,0),
“狐狸”=c(2,0,NA,NA,7,0))
cols我们可以使用:

library(data.table)
data=data.table("cat"=c(0,5,NA,0,0,0),
                "fox"=c(2,0,NA,NA,7,0))

data[, Count0 := cat + fox]
data$WANT = c(1,1,NA,1,1,2)
库(data.table)
cols我们可以使用:

library(data.table)
data=data.table("cat"=c(0,5,NA,0,0,0),
                "fox"=c(2,0,NA,NA,7,0))

data[, Count0 := cat + fox]
data$WANT = c(1,1,NA,1,1,2)
库(data.table)

cols非常感谢,但我希望按名称命名列,而不是使用'data==0',因为我的数据中还有其他列too@bvowe你可以做
data[,Count0:=rowSums(data[,.SD,.SDcols=“your col names”]==0,na.rm=TRUE)]
那太好了,非常感谢你。如果我想用-99替换'cat'和'fox'中等于0或2的值,该怎么办?我想按名称命名“猫”和“狐狸”,但不按列号命名?最后一个问题
dt[fox==0,fox:=-99]
@bvowey嘿,我更新了答案,并向您展示了两种命名列的方法。非常感谢,但我希望按名称命名列,而不是使用“data==0”,因为我的数据中还有其他列too@bvowe您可以执行
data[,Count0:=行和(data[,.SD,.SDcols=“your col names”]==0,na.rm=TRUE)]
那太好了,非常感谢。如果我想用-99替换'cat'和'fox'中等于0或2的值,该怎么办?我想按名称命名“猫”和“狐狸”,但不按列号命名?最后一个问题
dt[fox==0,fox:=-99]
@bvowey我更新了答案,并向您展示了两种命名列名的方法。