使用 for 和 if 根据数据框中的其他列添加列值

编程入门 行业动态 更新时间:2024-10-20 16:49:07
本文介绍了使用 for 和 if 根据数据框中的其他列添加列值的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧! 问题描述

我有一个这样的数据框:

I have a dataframe like this:

id adit diag1 diag2 2 3 4230 2234 3 5 3345 4456 4 6 4567 4467

我想使用下面的伪代码添加其他 2 列,dse1 和 dse2:

I would like to add other 2 columns, dse1 and dse2 using the pseudo-code below:

if diag1 contains 4230 then dse1 = 1 else dse1 = 0 if diag2 contains 4567 then dse2 =1 else dse2 = 0

我用过这个:

for (i in 1 : nrow(dse)){ for (j in 3: ncol(dse)){ if dse[i,j] %in% ("4320"){dse$dse1 = 1} else{dse$dse1 = 0} if dse[i,j] %in% ("4567"){dse$dse2 = 1} else{dse$dse2 = 0} } }

但这些都不起作用.

推荐答案

无需使用循环,只需使用ifelse,例如

No need to use a loop, just use ifelse, for example

dse = within(dse, { dse1 = ifelse(diag1 == 4230, 1, 0) dse2 = ifelse(diag2 == 4567, 1, 0) })

更多推荐

使用 for 和 if 根据数据框中的其他列添加列值

本文发布于:2023-05-29 23:08:38,感谢您对本站的认可!
本文链接:https://www.elefans.com/category/jswz/34/355078.html
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。
本文标签:框中   数据

发布评论

评论列表 (有 0 条评论)
草根站长

>www.elefans.com

编程频道|电子爱好者 - 技术资讯及电子产品介绍!