很新的R,我想某些子選擇列以確定其NA的0設置多列NA的重視--R
到目前爲止我有:
col_names1 <- c('a','b','c')
col_names2 <- c('e','f','g')
col_names <- c(col_names1, col_names2)
data = fread('data.tsv', sep="\t", header= FALSE,na.strings="NA",
stringsAsFactors=TRUE,
colClasses=my_col_Classes
)
setnames(data, col_names)
data[col_names2][is.na(data[col_names2])] <- 0
但我一直得到錯誤
錯誤在`[.data.table`(`* tmp *`,column_names2):當我是一個data.table(或字符向量)時,x必須被鍵入(即排序,並標記爲排序),所以data.table知道哪些列加入並利用o f x被排序。先撥打setkey(x,...),看到?setkey。
我相信這個錯誤是說我有錯誤的順序,但我不知道我是怎麼做的?
只是一個簡短的提示,但'fread'返回一個數據表。既然你是R的新手,我可以想象你實際上想要一個數據框。如果是這樣,在'fread'內指定'data.table = FALSE'。另外,請記住,缺失的值與0不一樣...並且根據你在做什麼,這可能會導致偏見。 – Laterow