我在 Statado
文件中有以下变量编码,我试图将其转换为 R:
斯塔塔
gen A=q1 if q1<4
gen B=q2 if q2<4
gen C=q3 if q3<4
...
R
# Example data
data = read.csv("https://pastebin.com/raw/BHUJpwqQ")
data$A <- subset(data,q1<4)
...
返回:
data$A <- data$q1[data$q1 <4]
$<-.data.frame
中的错误 (*tmp*
, "A", 值 = 列表(X = c(1L, 2L, 3L, : 替换有 106 行,数据有 144
问题:
如何正确地将 Stata 命令传输到 R?
示例:
data$A <- ifelse(data$q1 < 4, data$q1, NA)
在行动中:
> data <- data.frame(q1 = sample(2:6))
> data
q1
1 5
2 2
3 3
4 6
5 4
> data$A <- ifelse(data$q1 < 4, data$q1, NA)
> data
q1 A
1 5 NA
2 2 2
3 3 3
4 6 NA
5 4 NA