left_join 表示列不存在,即使它存在

tit*_*euf 4 r dplyr

我想用两个不同的变量 tp join 连接两个数据框。出现错误,表示无法在第二个数据帧中找到变量。但是当我运行函数 colnames() 时,会显示列名称。为什么会这样呢?

df_new <- left_join(master_settlement_current_month, master_settlement, by = c("D.settlecounty", "NAMECOUNTY"))

Error: Join columns must be present in data.
x Problem with `NAMECOUNTY`.
Run `rlang::last_error()` to see where the error occurred.

colnames(master_settlement_current_month)[1:5]
[1] "month"             "D.info_state"      "D.info_county"     "D.info_settlement" "D.settlecounty" 

  
colnames(master_settlement)
 [1] "NAME"            "NAMEJOIN"        "NAMECOUNTY"      "COUNTYJOIN"      "DATE"            "DATA_SOURC"      "IMG_VERIFD"     
 [8] "X"               "Y"               "kobo_label"      "X.3"             "X.2"             "X.1"             "INDEX"          
[15] "P_CODE"          "aok_sett_id"     "name_county_low" "ALT_NAME1"       "ALT_NAME2"       "ALT_NAME3"       "ALT_NAME4"      
[22] "FUNC_CLASS"      "CONF_SCORE"      "SRC_VERIFD"      "num_dup"         "check_coord_v38"

Run Code Online (Sandbox Code Playgroud)

小智 5

我认为你的by =声明中的语法可能有点不对劲。

library(dplyr)

df_new <- left_join(master_settlement_current_month, master_settlement, by = c("D.settlecounty" = "NAMECOUNTY"))
Run Code Online (Sandbox Code Playgroud)