【发布时间】:2018-07-07 00:47:58
【问题描述】:
我在尝试转换为 R 的 Stata do 文件中有以下变量编码:
状态
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)
...
返回:
数据$A $<-.data.frame(
*tmp*, "A", value = list(X = c(1L, 2L, 3L, ) 中的错误: 替换有106行,数据有144
问题:
如何正确地将 Stata 命令传输到 R 中?
【问题讨论】:
-
您需要提供minimal reproducible example,以便我们可以复制您正在尝试做的事情。
-
试试
within(data, df$A <- ifelse(q1<9, q1, ifelse(q1>=9, NA, NA))) -
我不敢相信 R 相当于一个简单的 Stata 命令这么长?
-
还是不行。但同样,我无法想象 R 代码解决方案有那么长吗?有人有想法吗?
-
它在我的电脑上运行良好。