【问题标题】:SparkR : How To make a "INDEX MATCH / VLOOKUP"SparkR:如何进行“索引匹配/VLOOKUP”
【发布时间】:2020-11-09 22:55:42
【问题描述】:

SPARKR 中的索引匹配/VLOOKUP

我正在尝试使用 SparkR 包在 Rstudio 进行“索引匹配/vlookup”,以前有人做过吗?我正在尝试使用函数定位来接近与普通 RStudio 中的函数匹配相同的方法,但我收到一条无法用两列定位的消息,所以我做了一个循环,但也没有用.. . 有人对此有任何线索吗?

iUWYData <- SparkR::nrow(UWYData)

for(i in iUWYData){
UWYData[i,2] = LoBUWY_Data[SparkR::locate(UWYData[i,1], LoBUWY_Data$ICRF_ID),"Version"]

}

UWYData$Version = LoBUWY_Data[SparkR::locate(UWYData$ICRF_ID, LoBUWY_Data$ICRF_ID),"Version"]

但我收到了这些消息:

UWYData[i, 1] 中的错误:extract operator [ 或 subset() 方法的第一个参数不支持过滤谓词以外的表达式。 追溯: 评估(解析(文本 = 代码),环境 = 环境) 测试(Premium_rate_Index_script_v1 = Premium_rate_Index_script_v1) LoBUWY_Data[SparkR::locate(UWYData[i, 1], LoBUWY_Data$ICRF_ID), “版本”] LoBUWY_Data[SparkR::locate(UWYData[i, 1], LoBUWY_Data$ICRF_ID), “版本”] SparkR::locate(UWYData[i, 1], LoBUWY_Data$ICRF_ID) UWY 数据[i, 1] UWY 数据[i, 1] stop(paste0("不支持过滤谓词以外的表达式", "在提取运算符[或subset()方法的第一个参数中。"))

(函数(类,fdef,mtable)中的错误:无法为签名“列”,“列”的函数“定位”找到继承的方法

回溯: 评估(解析(文本 = 代码),环境 = 环境) 测试(Premium_rate_Index_script_v1 = Premium_rate_Index_script_v1) LoBUWY_Data[SparkR::locate(UWYData$ICRF_ID, LoBUWY_Data$ICRF_ID), “版本”] LoBUWY_Data[SparkR::locate(UWYData$ICRF_ID, LoBUWY_Data$ICRF_ID), “版本”] SparkR::locate(UWYData$ICRF_ID, LoBUWY_Data$ICRF_ID) (函数(类,fdef,mtable)

【问题讨论】:

    标签: r sparkr


    【解决方案1】:

    使用SparkR::join

    UWYData <- SparkR::createDataFrame(data.frame(
      id = 1:5
    ))
    LoBUWY_Data <- SparkR::createDataFrame(data.frame(
      ICRF_ID = 1:4,
      Version = 11:14
    ))
    
    result <- SparkR::join(
      UWYData,
      LoBUWY_Data,
      UWYData$id == LoBUWY_Data$ICRF_ID,
      joinType = "left_outer"
    )
    
    SparkR::collect(result)
    #>   id ICRF_ID Version
    #> 1  1       1      11
    #> 2  3       3      13
    #> 3  5      NA      NA
    #> 4  4       4      14
    #> 5  2       2      12
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2021-08-25
      • 2017-06-26
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2019-04-18
      相关资源
      最近更新 更多