- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我正在探索 SparkR 以计算统计数据,例如分位数、平均值、类别频率(源文件为 Amazon S3 - csv 格式)。
我能够解析 csv 文件并创建数据框。但是,我无法将此 spark-dataframe 与标准 R 函数一起使用,例如 quantile()、mean()
等。
例如,这里是 R 数据框“test”
> test <- data.frame(x=c(26,21,20),y=c(34,29,28))
> quantile ( test$x )
0% 25% 50% 75% 100%
20.0 20.5 21.0 23.5 26.0
上面的数据框产生了正确的结果。但是,通过 read.df()
创建的数据框不适用于 quantile()
函数。
> myDf = read.df(sqlContext, "s3n://path/s3file.csv", , source="com.databricks.spark.csv")
> quantile ( myDf$column1 )
Warning messages:
1: In is.na(<S4 object of class "Column">) :
is.na() applied to non-(list or vector) of type 'S4'
2: In is.na(x) : is.na() applied to non-(list or vector) of type 'S4'
Error in x[order(x, na.last = na.last, decreasing = decreasing)] :
error in evaluating the argument 'i' in selecting a method for function '[': Error in x[!nas] : object of type 'S4' is not subsettable
我的问题很简单,无论如何都可以将 SparkR 的数据框与 native R 函数一起使用吗?或者如何将 SparkR 数据帧转换为向量。
提前致谢。
最佳答案
无法在 SparkR 数据帧上应用原生 R 函数。最简单的方法是通过
使您的 DataFrame 本地化localDf <- collect(myDf)
在此 data.frame 上,您可以应用原生 R 函数,但不能以分布式方式应用。当您使用 native R 函数将 localDf 更改为 localDf2 时,您可以将其转换回 SparkR DataFrame
myDf2 <- createDataFrame(sqlContext, localDF2)
关于r - SparkR - 将数据帧转换为向量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31431192/
我目前正在尝试使用 sparkR 1.5.1 版实现一些功能。我看过较旧的(1.3 版)示例,其中人们在 DataFrames 上使用了 apply 函数,但看起来这不再直接可用。例子: x = c(
zeppelin R 解释器文档说明: If you return a data.frame, Zeppelin will attempt to display it using Zeppelin's
我正在尝试使用存储在 hbase 中的数据在 sparkR 中创建一个 spark 数据框。 有谁知道如何在 SQLontext 中指定数据源参数或任何其他方式来解决这个问题? 最佳答案 您可能想看看
我收到以下错误: Error in if (javaVersionNum != sparkJavaVersion) { : missing value where TRUE/FALSE needed
我已将 Spark 发行版中的 SparkR 包安装到 R 库中。我可以调用以下命令,它似乎可以正常工作:library(SparkR) 但是,当我尝试使用以下代码获取 Spark 上下文时, sc
我编写了一个 SparkR 代码,想知道是否可以在 EMR 集群上使用 Spark-submit 或 SparkR 提交它。 我尝试过多种方法,例如:sparkR mySparkRScript.r 或
我在数据框中的一列中有以下值 231204.66666666666 376.0 346593.5 802.0
免责声明:我几乎没有使用 SparkR 的经验 采用以下数据框: ID Date1 Date2 58844880 04/11/16 NaN 59745846
我正在探索 SparkR 以计算统计数据,例如分位数、平均值、类别频率(源文件为 Amazon S3 - csv 格式)。 我能够解析 csv 文件并创建数据框。但是,我无法将此 spark-data
我决定提出这个问题是因为 the answer provided to a very similar问题不适用于我的场景: 我想合并这两个 SparkR 数据帧 df1 col1 col2
当我运行下面的代码时: rdd <- lapply(parallelize(sc, 1:10), function(x) list(a=x, b=as.character(x))) df <- cre
SparkR 版本 1.4.1 我正在尝试在两个连接条件下连接两个数据帧 df1 和 df2: df3 <- join(df1, df2, df1$col1==df2$col2 && df1$col3
我有一个从 MySQL 上传到 SparkR 的 Formal Class DataFrame 对象(通过 json 文件),其中包含如下格式的字符串: “2012-07-02 20:14:00” 我
SparkR库中有没有类似melt的函数? 将 1 行 50 列的数据转换为 50 行 3 列? 最佳答案 SparkR 中没有提供类似功能的内置函数。您可以使用 explode 构建自己的 libr
我有一个从 MySQL 上传到 SparkR 的 Formal Class DataFrame 对象(通过 json 文件),其中包含如下格式的字符串: “2012-07-02 20:14:00” 我
我正在将一些数据加载到 sparkR(Spark 版本 1.4.0,在 fedora21 上运行),我在上面运行一些算法,生成三个不同的数字。我的算法需要一堆参数,我想在相同数据上运行不同的参数设置。
我有一个 spark 数据框: library(SparkR); library(magrittr) as.DataFrame(mtcars) %>% groupBy("am") 如何取消对这个
我们在服务器上保存了 parquet 数据,我正在尝试通过以下方式使用 SparkR sql() 函数 df SELECT * FROM parquet.` SELECT * FROM table"
我正在使用 SparkR 2.1.0 进行数据操作 我想以编程方式按多列分组。我知道如果我单独列出它们,或者从向量中引用它们的位置,我可以按多列分组......但我希望能够将列列表作为向量传递(这样,
我有一个位于 Parquet 文件中的 500K 行 spark DataFrame。我正在使用 spark 2.0.0 和 SparkR Spark(RStudio 和 R 3.3.1)中的软件包,
我是一名优秀的程序员,十分优秀!