首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何在多个向量上迭代

如何在多个向量上迭代
EN

Stack Overflow用户
提问于 2019-12-01 14:47:23
回答 1查看 66关注 0票数 0

对R来说,这是很新的一段时间,但似乎没能让它起作用。我正在尝试创建一个名为peo$Tier的列。它有三个级别,("1", "2", "3")

代码语言:javascript
复制
tier1 <- c("ADP TOTAL SOURCE INC", "A 1 HR A DIVISION OF OASIS OUTSOURCING INC", "COADVANTAGE CORP", "INSPERITY INC", "OASIS ACQUISITION INC", "OASIS ACQUISITION INC A PAYCHEX CO", "OASIS DHR LLC", "OASIS OUTSOURCING CONTRACT II INC", "OASIS OUTSOURCING INC", "PAYCHEX BUSINESS SOLUTIONS LLC", "PAYCHEX HR OUTSOURCING LLC", "TRINET GROUP INC", "TRINET HR II HOLDINGS INC", "TRINET HR IV LLC")
tier2 <- c("ALLY HR LLC DBA MATRIXONESOURCE", "ALPHASTAFF GROUP INC", "CHOICE EMPLOYER SOLUTIONS INC", "CORNERSTONE CAPITAL GROUP INC", "DECISION HR", "FLORIDA RESOURCE MANAGEMENT LLC", "FRANKCRUM 2 INC", "IMPACT STAFF LEASING LLC", "JUSTWORKS EMPLOYMENT GROUP LLC", "KYMBERLY GROUP PAYROLL SOLUTIONS INC", "OCMI III INC DBA PEOPAYGO", "REGIS GROUP HOLDINGS INC", "SOUTH EAST PERSONNEL LEASING INC", "STAFFLINK OUTSOURCING INC", "THE S2 HR GROUP LLC", "TLR OF BONITA INC", "WORKFORCE BUSINESS SERVICES INC")

如果peo$Tier变量在向量tier1中,"1“将被赋值。如果peo$Tier变量在向量tier2中,"2“将被赋值。否则"3“将被分配。这些向量值来自另一个名为peo$NAMED.INSURED的列,共有208个唯一字符。

我尝试了减法,但它只适用于向量中的第一个值。我尝试了一个for循环,但是得到了错误:

较长的对象长度不是较短对象长度的倍数。

不知道如何完成这项任务。请帮帮忙。

代码语言:javascript
复制
for (i in 1:length(peo$NAMED.INSURED)) {
    peo$Tier[i] <- ifelse(peo$NAMED.INSURED == tier1, 1, ifelse(peo$NAMED.INSURED == tier2, 2, 3))
}
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2019-12-01 14:53:36

ifelse是矢量化的,当您比较多个值时,使用%in%而不是==

所以在这种情况下你可以

代码语言:javascript
复制
peo$Tier <- with(peo, ifelse(NAMED.INSURED %in% tier1, 1, 
                      ifelse(NAMED.INSURED %in% tier2, 2, 3)))

我们也可以使用来自case_whendplyr

代码语言:javascript
复制
library(dplyr)
peo %>%
 mutate(Tier = case_when(NAMED.INSURED %in% tier1 ~ 1, 
                         NAMED.INSURED %in% tier2 ~ 2, 
                         TRUE ~3))
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/59126634

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档