使用SparkR的Sparklyr:麻烦解析函数参数

问题描述 投票:0回答:1

我正在使用SparkR运行Sparklyr。当我尝试使用schema()创建的数据表调用spark_read_csv()函数时,我收到以下错误(以及select()lapply()函数上的类似错误):

(函数(classes,fdef,mtable)中的错误:

无法为签名'“tbl_spark”找到函数'schema'的继承方法

以下是我的版本信息:

R版本3.5.3(2019-03-11)

平台:x86_64-w64-mingw32 / x64(64位)

运行于:Windows Server> = 2012 x64(build 9200)

......其他附件包:[1]

sparklyr_1.0.9005 SparkR_2.4.1

以下是一些示例代码:

library(SparkR, lib.loc = c(file.path(Sys.getenv("SPARK_HOME"), "R", "lib")))
library(sparklyr)

...

sc <- spark_connect(master = "spark://<server>",spark_home = 
"C:/Users/paul/Downloads/spark-2.4.1-bin-hadoop2.7", app_name = "sparklyr",config=config)

...

AWIDData = spark_read_csv(sc, name = "AWIDData", path = "hdfs://<server>/AWID/dataset-headers-tst.csv")

...

SparkR::schema(AWIDData)

我希望这可以为tbl_spark数据表创建模式结构,但它有一些错误,解决了要调用的正确函数。

r sparkr sparklyr
1个回答
0
投票

混淆可能是混合来自两个包SparkRsparklyr的函数的结果。由于您已通过sparklyr函数(spark_read_csv)创建了与数据源的连接,因此您需要使用sparklyr函数sdf_schema而不是schema

© www.soinside.com 2019 - 2024. All rights reserved.