- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我正在处理医疗 claim 数据,数据文件如下所示
claim_id status
abc123 P
abc123 R
xyz374 P
xyz386 R
我想创建一个新列作为标志,该列基本上按 Claim_id 分组,并且如果同一 Claim_id 的状态同时包含“P”和“R”。标志列应包含"is"
claim_id status flag
abc123 P Yes
abc123 R Yes
xyz374 P No
xyz386 R No
我的解决方案是使用 dplyr :-
data <-data1 %>%
group_by(claim_id)%>%
mutate(flag = ifelse(any(status == "P" | status == "R"),
"Yes",
as.character(status)))
此方法需要较长时间,并且还会在标志列中将所有行标记为"is"。
最佳答案
试试这个:
data1 <- data1 %>% group_by(claim_id) %>% mutate(flag = (n_distinct(status) == 2))
这假设这是状态字段仅有的两个可能值。如果情况并非如此,您将需要执行以下操作:
data1 <- data1 %>% group_by(claim_id) %>% mutate(flag = (('P' %in% status) & ('R' %in% status)))
你也可以这样做
data1 %>%
group_by(claim_id) %>%
mutate(flag = ifelse(all(c("P", "R") %in% status), "Yes", "No"))
但是,使用逻辑标志可能会更好。它完全避免了 ifelse
(使其更快),并且使之后的子集化变得非常容易:
data1 %>%
group_by(claim_id) %>%
mutate(flag = all(c("P", "R") %in% status))
关于r - Ifelse 在 dplyr 内需要更长的时间来执行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34752076/
所以我的问题是: 为什么(以及如何避免)C# 中的 Is 运算符的生命周期比 if 中使用的更长? 例子: Animal a = new Cat(); if (a is Cat c) { Co
我遇到了这个问题,我已经尝试解决了很长一段时间。理想情况下,我希望 particles.js 的“生成框”向下延伸到页面底部(由 fullpage.js 计算的 7 x viewport),这样当使用
我想让一个 div(我的侧边栏)延伸到页面底部。我知道我需要添加“高度:100%;”为了做到这一点。 但是当我添加 height: 100%; 时,内容少于侧边栏的页面会降低侧边栏的高度,然后您就看不
只有我这么认为吗,还是在 SQL Server 2008 Management Studio 中扩展数据库列表比在 SQL Server 2005 Management Studio 中扩展数据库列表
我是一名优秀的程序员,十分优秀!