我在选择var<的数据帧行时遇到了麻烦。中值
数据框如下所示:
str(filteredData[,c(sick, healthy)])
'data.frame': 24840 obs. of 163 variables:
$ GSM1317914: Factor w/ 24756 levels "10.0012","10.0026",..: 5903 13208 20201 20237 19969 9020 22841 10615 8842 20664 ...
$ GSM1317915: Factor w/ 24801 levels "10.0012","10.0026",..: 1631 14999 20421 6724 24079 1668 20462 10583 16286 17634 ...
$ GSM1317916: Factor w/ 24784 levels "10.0012","10.0026",..: 5084 4432 20374 17185 23541 7658 21274 2267 15241 19556 ...
我使用这段代码来选择行:
rowSelection2 <- which(var(filteredData[,c(sick, healthy)], na.rm = TRUE) < median(filteredData[,c(sick, healthy)], na.rm = TRUE), arr.ind=TRUE)[,1]
并且它给出了这个错误:
Error in median.default(filteredData[, c(sick, healthy)], na.rm = TRUE) :
need numeric data
我用它来检查数据中是否有NA:
> row.has.na <- apply(filteredData[,c(sick, healthy)], 1, function(x){any(is.na(x))})
> sum(row.has.na)
[1] 0
我该如何解决这个问题?
此致
更新
一个例子
> filteredData
GSM1317972 GSM1317973 GSM1317974 GSM1317975
1 7.15286 7.1327 7.33368 7.06714
3 7.14252 7.10165 7.10693 7.02591
4 7.9208 8.331 8.06961 8.24292
8 7.17856 7.54563 7.31661 7.74658
9 9.78263 8.78217 9.53513 9.6441
> sick
[1] "GSM1317972" "GSM1317973"
> healthy
[1] "GSM1317974" "GSM1317975"
我只想选择ROW值的方差小于ROW值中值的ROWS。真的很感谢你的帮助我不是很多使用R ..