簡體   English   中英

R 如何根據其他 2 列將另一列添加到數據集

[英]R how to add another column to a dataset based on 2 other columns

我有一個組織中交換的消息數據集,我想根據case_when sender_department == receiver_department創建另一個列,分配"intra"而如果sender_department != receiver_department ,則分配"inter"

我這樣做是為了了解在此期間部門間和部門內消息的比例。

我使用下面的代碼

intra_inter_msg <- DF %>%
  mutate(inter_intra = case_when(sender_department == receiver_department, ~"intra",         ,
                                 sender_department != receiver_department, ~"inter"))

我得到了這個錯誤

mutate()錯誤:
計算inter_intra = case_when(...)時出現問題。 case_when()中的錯誤引起:
情況 1 ( sender_department == receiver_department ) 必須是雙面公式,而不是邏輯

我做了一個小例子 DF 來測試它:

require(dplyr)
DF = data.frame (sender_department = c("econ","math","history"),receiver_department = c("econ","history","math"))
DF
intra_inter_msg <- DF %>%
  mutate(inter_intra = case_when(sender_department == receiver_department ~"intra",         
                                 sender_department != receiver_department ~"inter"))
intra_inter_msg

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM