处理R中的整数变量时的IFELSE错误

发布于 2025-02-11 05:38:34 字数 2115 浏览 1 评论 0原文

我目前正在对整数变量进行非常简单的IFELSE。但是我会遇到以下错误。

请注意,“ AVG_COL_F_SCORE”是我要创建的变量。

我尝试搜索问题,但没有成功。任何帮助/建议都是很棒的。谢谢!

请参阅以下代码。

ohyeah = as.data.frame(
  clust_df_full %>% 
    full_join(select(colleague_clust_df, c("employee_id", "colleague_cluster")),
              by = "employee_id") %>% 
    full_join(select(mgr_clust_df, c("employee_id", "mgr_cluster")),
              by = "employee_id") %>% 
    full_join(select(self_clust_df, c("employee_id", "self_cluster")),
              by = "employee_id") %>% 
    full_join(select(promo_clust_df, c("employee_id", "promo_cluster")),
              by = "employee_id") %>% 
    filter(nchar(employee_id) <= 10) %>% 
    
    left_join(colleague_clusters_summary,
              by = c("colleague_cluster" = "Cluster")
    ) %>% 
    select(-"Size") %>% 
    
    rename(avg_col_f1 = col_f1.y,
           avg_col_f2 = col_f2.y,
           avg_col_f3 = col_f3.y,
           avg_col_f4 = col_f4.y,
           avg_col_f5 = col_f5.y
           ) %>% 
    
    mutate(avg_col_f_score = ifelse(colleague_cluster == 1,
                                    avg_col_f1,
                                    ifelse(colleague_cluster == 2,
                                           avg_col_f2,
                                           ifelse(colleague_cluster == 3,
                                                  avg_col_f3,
                                                  ifelse(colleague_clust == 4,
                                                         avg_col_f4,
                                                         ifelse(colleague_cluster == 5,
                                                                avg_col_f5, NA)
                                                         )
                                                  )
                                           )
                                    )
           )
)

I'm currently doing a very simple ifelse on an integer variable. But I'm getting the following error.

enter image description here

Note that "avg_col_f_score" is the variable I'm trying to create.

I've tried googling the problem but was unsuccessful. Any help/advice would be wonderful. Thanks!

Please see the following code.

ohyeah = as.data.frame(
  clust_df_full %>% 
    full_join(select(colleague_clust_df, c("employee_id", "colleague_cluster")),
              by = "employee_id") %>% 
    full_join(select(mgr_clust_df, c("employee_id", "mgr_cluster")),
              by = "employee_id") %>% 
    full_join(select(self_clust_df, c("employee_id", "self_cluster")),
              by = "employee_id") %>% 
    full_join(select(promo_clust_df, c("employee_id", "promo_cluster")),
              by = "employee_id") %>% 
    filter(nchar(employee_id) <= 10) %>% 
    
    left_join(colleague_clusters_summary,
              by = c("colleague_cluster" = "Cluster")
    ) %>% 
    select(-"Size") %>% 
    
    rename(avg_col_f1 = col_f1.y,
           avg_col_f2 = col_f2.y,
           avg_col_f3 = col_f3.y,
           avg_col_f4 = col_f4.y,
           avg_col_f5 = col_f5.y
           ) %>% 
    
    mutate(avg_col_f_score = ifelse(colleague_cluster == 1,
                                    avg_col_f1,
                                    ifelse(colleague_cluster == 2,
                                           avg_col_f2,
                                           ifelse(colleague_cluster == 3,
                                                  avg_col_f3,
                                                  ifelse(colleague_clust == 4,
                                                         avg_col_f4,
                                                         ifelse(colleague_cluster == 5,
                                                                avg_col_f5, NA)
                                                         )
                                                  )
                                           )
                                    )
           )
)

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

鸵鸟症 2025-02-18 05:38:34

尝试使用dyplr :: rename()或在if_else()的最终消除na中替换为“”无空间。

Try with dyplr::rename() or eliminate NA at final of if_else() replace it with "" without space.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文