我有二进制 R data.frame,第一列是 ID。如何将这些非零值加 1?
id A B C
001 0 1 0
002 0 0 1
应该变成
id A B C
001 0 2 0
002 0 0 2
最佳答案
我们可以乘以想要的数字,利用 0
乘以任何值返回 0
df1[-1] <- df1[-1] * 2
或者一个选项是在列的子集上创建一个逻辑矩阵,使用它来对值进行子集化并分配数字
df1[-1][df1[-1] ==1] <- 2
或者添加
df1[-1][df1[-1] ==1] <- df1[-1][df1[-1] ==1] + 1
关于R data.table,如何为每个单元格值不等于0加1,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/63946186/