【发布时间】:2017-08-23 00:01:46
【问题描述】:
我正在尝试在 sparklyR 中绑定两个不同的数据帧(具有相同的行数 - 并且行匹配)的简单操作。
例如:
library(sparklyr)
library(dplyr)
sc <- spark_connect(master = "local[*]")
iris_tbl <- copy_to(sc, iris, name="iris", overwrite=TRUE)
#check column names
colnames(iris_tbl)
#subset iris into two df's
subdf <- iris_tbl %>%
select(Sepal_Length,Sepal_Width)
subdf1 <- iris_tbl %>%
select(Petal_length,Petal_Width,Species)
#try to bind back together
dfCombine <- bind_cols(subdf,subdf1)
我收到的错误消息:
#Error
Error in cbind_all(x) : basic_string::resize
我试过combine()、cbind_all、cbind() 和c()。没有一个工作。
【问题讨论】:
-
你试过
union_all吗?见github.com/rstudio/sparklyr/issues/76 -
union_all用于绑定两个具有完全相同列的数据帧(即,它类似于rbind,类似于 SQL 中的UNION。 -
哎呀,对不起。在这种情况下,由于数据分区,它看起来不太好。在这里找到关于
bind_cols的讨论:github.com/rstudio/sparklyr/issues/556
标签: r apache-spark spark-dataframe sparklyr