【问题标题】:Looking to sort a Spark Data Frame by Index using SparklyR希望使用 SparklyR 按索引对 Spark 数据帧进行排序
【发布时间】:2017-04-27 21:02:59
【问题描述】:
library(sparklyr)
library(dplyr)
library(Lahman)

spark_install(version = "2.0.0")
sc <- spark_connect(master = "local")

batting_tbl <- copy_to(sc, Lahman::Batting, "batting"); batting_tbl

batting_tbl %>% arrange(-index())
# Error: org.apache.spark.sql.AnalysisException: Undefined function: 'INDEX'. 
# This function is neither a registered temporary 
# function nor a permanent function registered in the database 'default'.; line 3 pos 10

有人知道如何使用 dplyr 通过 Spark (sparklyr) DataFrame 按索引排序吗?

【问题讨论】:

    标签: r apache-spark dplyr spark-dataframe sparklyr


    【解决方案1】:

    这是我能想到的最佳解决方案。尽管是正确的,sdf_with_unique_id 函数在 62,000 行以上返回一些非常高的连续值。无论如何,这是使用 SparklyR 创建分布式索引列的一种方法。

    library(sparklyr)
    library(dplyr)
    library(Lahman)
    
    options(tibble.width = Inf) 
    options(dplyr.print_max = Inf) 
    
    spark_install(version = "2.0.0")
    sc <- spark_connect(master = "local")
    
    batting_tbl <- copy_to(sc, Lahman::Batting, "batting"); batting_tbl
    tbl_uncache(sc, "batting")
    
    y <- Lahman::Batting
    
    batting_tbl <- batting_tbl %>% sdf_with_unique_id(., id = "id") # Note 62300 threshold for higher values
    batting_tbl %>% arrange(-id)
    

    【讨论】:

      猜你喜欢
      • 2020-07-10
      • 1970-01-01
      • 2021-10-23
      • 1970-01-01
      • 1970-01-01
      • 2021-04-12
      • 1970-01-01
      • 2011-12-17
      • 2012-06-26
      相关资源
      最近更新 更多