Change values in row based on a column value and replacing specified column range
我发现我的大部分答案是:根据列值 r 更改行中的值。有两个区别:我想根据分类变量的测试来替换值,并且我想指定要替换值的范围。我正在使用 8600 奇数行和 170 列的数据框。
这是一个例子:-
1 2 3 | x = data.frame(c("Jan","Feb","March","April"), c(9,3,4,6), c(8, 12,9,11), c(10, 9, 7, 0.6)) names(x) = c("Month","VAR1","VAR2","VAR3") |
我想用
我试过:
1 2 3 | Warning message: In `[<-.factor`(`*tmp*`, iseq, value = c(1L, 1L)) : invalid factor level, NA generated |
和
1 2 3 4 5 | Month VAR1 VAR2 VAR3 1 Jan 9 8 10 2 Feb 3 12 9 3 <NA> NA 3 1 4 <NA> NA 4 1 |
有一些明显的编程初学者语法错误我无法克服!
试试:
1 | x[x$Month %in% c("March","April"), c("VAR2","VAR3")] = NA |