r - 定义“1 年内”的公式
问题描述
我对 R 相当陌生,我正在尝试为新列'w_1yr'
(1 年内)编写一个公式,使用我的另外两个列dataframe
:(enroll_yr
入学年份)和lab_yr
(实验室绘制完成年份)。基本上,我想说的lab_yr
是,如果在 1 年内,enroll_yr
则w_1yr
= 1,否则为 0。
以下是我到目前为止所拥有的,但仍然不正确。
df$w_1yr <- ifelse(df$lab_yr <= 'enroll_yr', 1, ifelse(df$lab_yr > 'enroll_yr', 0, NA))
(对不起,由于某种原因我无法从控制台复制/粘贴,所以不得不写出来)
如果有人可以帮助我,那就太好了!谢谢!
解决方案
以下解决方案假设您lab_yr
总是在enroll_yr
obs<-c(1,2,3)
enroll_yr<-c('2011','2011','2015')
lab_yr<-c('2013','2011','2016')
enroll_yr<-as.numeric(enroll_yr)
lab_yr<-as.numeric(lab_yr)
df<-data.frame(obs,enroll_yr,lab_yr)
df$w_1yr<-ifelse(lab_yr-enroll_yr==1|lab_yr-enroll_yr==0,1,0)
df
推荐阅读
- crystal-lang - Crystal:检测字典插入是否覆盖键,但没有哈希两次
- python - 提及时 discord.py 发送前缀
- c# - ActionResult 参数为空
- php - (PHP 初学者帮助)如果您打算使用 SMTP,请在此行之后添加您的 SMTP 代码
- arrays - 从 vue 的数组中添加和删除单击的 html 元素
- reactjs - reactstrap 组件不工作打字稿
- pine-script - 如何在pinescript中访问系列[float]中的实际数字
- next.js - Nextjs - getServerSideProps 在服务器上不起作用
- python - 尝试/除了没有按预期捕获字符串输入
- spring-boot - 记录 @SqsListener 时缺少 TraceId