java - Sparkr java错误

标签 java r csv sparkr

当我尝试使用 R 加载数据时:

df <- read.df(sqlContext, "https://s3-us-west-2.amazonaws.com/sparkr-data/nycflights13.csv", "com.databricks.spark.csv",header=T)

我在使用 java 时遇到错误

Error in invokeJava(isStatic = TRUE, className, methodName, ...) : 
  java.lang.ClassCastException: java.lang.Boolean cannot be cast to java.lang.String
    at com.databricks.spark.csv.DefaultSource.createRelation(DefaultSource.scala:74)
    at com.databricks.spark.csv.DefaultSource.createRelation(DefaultSource.scala:39)
    at com.databricks.spark.csv.DefaultSource.createRelation(DefaultSource.scala:27)
    at org.apache.spark.sql.execution.datasources.ResolvedDataSource$.apply(ResolvedDataSource.scala:125)
    at org.apache.spark.sql.DataFrameReader.load(DataFrameReader.scala:114)
    at org.apache.spark.sql.api.r.SQLUtils$.loadDF(SQLUtils.scala:156)
    at org.apache.spark.sql.api.r.SQLUtils.loadDF(SQLUtils.scala)
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
    at java.lang.reflect.Method.invoke(Unknown Source)
    at org.apache.spark.api.r.RBackendHandler.handleMethodCall(RBackendHandler.scala:132)
    at or

最佳答案

我终于找到了上述问题的解决方案。 需要确保以下内容

您已经安装了java开发包,可以从网站下载 下载this并保存到C:/hadoop 在这个 bin 文件夹中应该像 C:/hadoop/bin

在环境变量中设置JAVA_HOME(这里不要提及bin文件夹) 设置HADOOP_HOME作为环境变量(这里不要提及bin文件夹)

现在运行以下

rm(list=ls())
  # Set the system environment variables


Sys.setenv(SPARK_HOME = "C:/spark")
Sys.setenv(HADOOP_HOME = "C:/Hadoop")
.libPaths(c(file.path(Sys.getenv("SPARK_HOME"), "R", "lib"), .libPaths()))


#load the Sparkr library
library(rJava)
library(SparkR)


Sys.setenv('SPARKR_SUBMIT_ARGS'='"--packages" "com.databricks:spark-csv_2.11:1.2.0" "sparkr-shell"')

Sys.setenv(SPARK_MEM="1g")


# Create a spark context and a SQL context
sc <- sparkR.init(master = "local")

sqlContext <- sparkRSQL.init(sc)

现在您应该能够读取 CSV 文件

关于java - Sparkr java错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33237475/

相关文章:

java - 指数拟合与 apache 公共(public)数学

java - 以下 SQL 查询是否正确计算表中的多个字段

matlab - 将带有文本限定符的 CSV 加载到 MATLAB/Octave

java - Java String.split 的替代方案以获得更好的性能

java - Utils 文件是好的做法吗?

R data.table 按类别递增并将 NA 设置为最后一个非缺失值

r - 增量计算数据帧中唯一数据点的有效方法

r - 未渲​​染绘图时,Shiny 会保留空白的空白空间

python - Tornado:读取上传的 CSV 文件?

python - 具有数据初始化的 CSV 列的 JSON 键值