我将数据框复制到本地Spark群集时遇到问题。我尝试按照此网站上的步骤操作:https://spark.rstudio.com/ 我像这样连接到我的群集:
> library(sparklyr)
> sc <- spark_connect(master = "local")
然后我测试了将对象复制到集群中:
> library(dplyr)
> iris_tbl <- copy_to(sc, iris)
它工作正常。我在IDE中为Sparc看到了这个对象。
然后我尝试用我的数据框做同样的事情:
> my_df_tbl <- copy_to(sc, my_df)
出现此错误:
UseMethod中的错误(&#34;调用&#34;): 没有适用的方法来调用&#39;应用于类&#34;字符&#34;
的对象
当我尝试这样做时:
> copy_to(sc, my_df)
我收到了这个错误:
as.vector中的错误(x,&#34;字符&#34;):无法强制类型 &#39;环境&#39;到#&#39;字符&#39;
的矢量
我检查了两个对象,看看两者是否属于同一类型:\
> class(iris)
[1] "data.frame"
> class(my_df)
[1] "tbl_df" "tbl" "data.frame"
你知道它为什么不起作用吗?
答案 0 :(得分:0)
我找到了解决方案(或错误)。我不知道为什么我之前没有得到这个错误但是在我第二次打开RStudio和我的项目之后我试图这样做:
library(sparklyr)
我得到错误,我没有包裹闪亮和rlang。我安装了它们:
> install.packages("shiny")
> install.packages("rlang")
然后我再次尝试复制我的数据框,它没有问题。
答案 1 :(得分:0)
对我而言,它有助于使用早期版本的sparklyr。我将版本从0.7.0更改为0.5.6。