使用R中的“ NA”值在测试数据集中创建目标变量列

时间:2018-09-25 10:38:54

标签: r error-handling data.table data-manipulation

我想结合测试和训练数据集。在此之前,我必须添加新列以测试数据集以匹配火车数据集的列数。

我正在用“ NA”值在测试数据集中创建新列,这是我使用的代码:

test[,Item_Outlet_Sales := "NA"]

编译这段代码给了我这个错误:

Error in `:=`(Item_Outlet_Sales, "NA") : 
  Check that is.data.table(DT) == TRUE. Otherwise, := and `:=`(...) are defined for use in j, once only and in particular ways. See help(":=").

3 个答案:

答案 0 :(得分:1)

您只需要将数据框转换为data.table。

x[, X := NA]
Error in `:=`(X, NA) : 
Check that is.data.table(DT) == TRUE. Otherwise, := and `:=`(...) are defined for use in j, once only and in particular ways. See help(":=").
z <- as.data.table(x)
z[, X := NA]

然后您会看到添加了名为“ X”的列。

您只需要

test <- as.data.table(test)
test[,Item_Outlet_Sales := "NA"]

并使用:=表示法添加新列。

答案 1 :(得分:0)

library(dplyr)    
test <- test %>% 
      mutate(
            Item_Outlet_Sales = NA
      )   

答案 2 :(得分:0)

代码很好,请尝试以下操作:     test<-data.table(test)