首页 > 解决方案 > 将 Stata 变量编码转换为 R 代码

问题描述

do我在尝试转换为 R的 Stata 文件中有以下变量编码:

斯塔塔

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", value = list(X = c(1L, 2L, 3L, : 替换有 106 行,数据有 144

问题:

如何正确地将 Stata 命令传输到 R 中?

标签: rencodingstata

解决方案


例子:

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

推荐阅读