如果r

问题描述

lesion2

enter image description here

解决方法

仅在基数R中使用replace

v
# [1]  0 -1  1  1 -1  2  1  2  1 -1 -1  0

v <- replace(v,v >= 0,1)
v
# [1] -2  1 -2 -2 -1  1 -1 -1 -2  1 -2  1

要将其应用于数据框的多列,请在lapply中使用它。

d
#    V1 V2 V3
# 1   a -1 -2
# 2   b -2  2
# 3   c  0 -2
# 4   d -1  1
# 5   e -2  1
# 6   f  2  2
# 7   g  0 -2
# 8   h  2  0
# 9   i  0  2
# 10  j  0  1
# 11  k  2  0
# 12  l  1  2

d[c("V2","V3")] <- lapply(d[c("V2","V3")],function(v) replace(v,1))
d
#    V1 V2 V3
# 1   a -1 -2
# 2   b -2  1
# 3   c  1 -2
# 4   d -1  1
# 5   e -2  1
# 6   f  1  1
# 7   g  1 -2
# 8   h  1  1
# 9   i  1  1
# 10  j  1  1
# 11  k  1  1
# 12  l  1  1

数据:

set.seed(42)
n <- 12
v <- sample(-2:2,n,replace=TRUE)

d <- data.frame(V1=letters[1:n],V2=sample(-2:2,replace=TRUE),V3=sample(-2:2,replace=TRUE))

相关问答

依赖报错 idea导入项目后依赖报错,解决方案:https://blog....
错误1:代码生成器依赖和mybatis依赖冲突 启动项目时报错如下...
错误1:gradle项目控制台输出为乱码 # 解决方案:https://bl...
错误还原:在查询的过程中,传入的workType为0时,该条件不起...
报错如下,gcc版本太低 ^ server.c:5346:31: 错误:‘struct...