Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/r/83.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中data.table的列值 库(data.table) train_R_Data.table - Fatal编程技术网

基于另一列值更新R中data.table的列值 库(data.table) train

基于另一列值更新R中data.table的列值 库(data.table) train,r,data.table,R,Data.table,我们可以在.SDcols中指定要粘贴的列,使用paste0和do。调用Data.table(.SD)的子集上的,并分配(:=)来创建“Response”列 library(data.table) train <- fread(input = "../train.csv", header = TRUE, sep = ",", stringsAsFactors = FALSE, data.table = TRUE) train$Response <- "" #

我们可以在
.SDcols
中指定要粘贴的列
,使用
paste0
do。调用Data.table(
.SD
)的子集上的
,并分配(
:=
)来创建“Response”列

library(data.table)

train <- fread(input = "../train.csv", header = TRUE, sep = ",", 
           stringsAsFactors = FALSE, data.table = TRUE)

train$Response <- "" #create new column with values ""
train$Response <- paste(train[, 15:20, with = FALSE], collapse = "")

RStudio console:
> is.data.frame(train)
[1] TRUE
> is.data.table(train)
[1] TRUE

目前这没有多大意义(因为data.tables不会自然地使用“$”操作符)。如果
train
是一个data.table,那么您应该构建一个示例来创建一个类似于您的用例的对象。
train[, Response := do.call(paste0, .SD), .SDcols = 15:20]