Tag: apache spark

一个rdd字符将被转换成一个dataframe

RDD数据将被转换成dataframe。 但我无法这样做。 ToDf不工作,我也尝试与数组RDD到数据框。 请告诉我。这个程序是用scala和sparkparsing一个样例excel import java.io.{File, FileInputStream} import org.apache.poi.xssf.usermodel.XSSFCell import org.apache.poi.xssf.usermodel.{XSSFSheet, XSSFWorkbook} import org.apache.poi.ss.usermodel.Cell._ import org.apache.spark.sql.SQLContext import org.apache.spark.SparkConf import org.apache.spark.SparkContext import org.apache.spark.sql.types.{ StructType, StructField, StringType, IntegerType }; object excel { def main(args: Array[String]) = { val sc = new SparkContext(new SparkConf().setAppName("Excel Parsing").setMaster("local[*]")) val file = new FileInputStream(new File("test.xlsx")) val wb = new XSSFWorkbook(file) val sheet […]

如何读取多个Excel文件并将它们连接成一个Apache Spark DataFrame?

最近我想从Spark Summit 2016开展Spark机器学习实验。培训video在这里 ,出口笔记本在这里。 实验室中使用的数据集可以从UCI Machine Learning Repository下载。 它包含来自燃气发电厂各种传感器的读数。 格式是带有五个工作表的xlsx文件。 要使用实验室中的数据,我需要读取Excel文件中的所有表单,并将它们连接成一个Spark DataFrame。 在培训期间,他们正在使用Databricks Notebook,但是我正在使用IntelliJ IDEA与Scala并在控制台中评估代码。 第一步是将所有的Excel工作表保存到名为sheet1.xlxs , sheet2.xlsx等单独的xlsx文件中,并将其放入工作sheets目录中。 如何读取所有Excel文件并将它们连接成一个Apache Spark DataFrame?

辛巴火花ODBC驱动程序不工作MS Excel

我正在使用Spark(1.5.0)来使用Spark ThriftServer应用程序使用Spark-SQLfunction,并使用Simba Spark ODBC Driver来获取连接。 使用Tableau,我可以连接并能够执行Spark-SQL操作。 但是,当我尝试将Spark-SQL连接到MS-Excel时,它会连接,但不会列出数据库和表名。 而且我也尝试了按照Doc的MS-Excel的Microsoft Query选项来执行自定义的SQL查询( select * default.airline ),但是它的查询语句( select * from SPARK.default.airline )与目录名SPARK抛出错误。 问题是如何从查询中删除该目录名称,我尝试了所有可用的选项。

Spark Sql:从Excel工作表加载文件(扩展名为.xlsx)无法正确推断datetypes列的模式

我有一个xlsx文件包含date/时间(我的时间)在以下格式和示例logging – 5/16/2017 12:19:00 AM 5/16/2017 12:56:00 AM 5/16/2017 1:17:00 PM 5/16/2017 5:26:00 PM 5/16/2017 6:26:00 PM 我正在以下面的方式读取xlsx文件: val inputDF = spark.sqlContext.read.format("com.crealytics.spark.excel") .option("location","file:///C:/Users/file.xlsx") .option("useHeader","true") .option("treatEmptyValuesAsNulls","true") .option("inferSchema","true") .option("addColorColumns","false") .load() 当我尝试使用以下模式获取模式时: – inputDF.printSchema() ,我得到双。 有时,即使我得到的模式为string。 而当我打印的数据,我得到的输出为: – —————— My Time —————— 42871.014189814814 42871.03973379629 42871.553773148145 42871.72765046296 42871.76887731482 —————— 以上输出对于给定的input显然是不正确的。 而且,如果我以csv格式转换xlsx文件并读取它,我会得到正确的输出。 这是我如何阅读CSV格式的方式: – spark.sqlContext.read.format("csv") .option("header", "true") .option("inferSchema", true) .load("file:///C:/Users/file.xlsx") […]

如何在Scala中重新创buildExcel的Longtypesdatetypes转换

我做了一个特殊的粘贴date列作为Excel中的值。 我想把结果长的值转换回spark的date(使用scala api)。 Example: converting 41088.96389 to date in excel results in 6/29/16 23:08 same when did through cast(DataTypes.TimestampType) in spark, it gives 01 Jan 1970 11:24:48 GMT 任何链接到Excel如何处理长types时转换date将不胜感激。

将apache-spark中的RDD数据写入excel文件

我可以在Excel文件中写入RDD数据以及在apache-spark中的映射吗? 这是一个正确的方法吗? 这不是一个写作将是一个本地function,不能通过群集? 下面给出的Python代码(它只是一个例子来澄清我的问题,我明白这个实现可能并不需要): import xlsxwriter import sys import math from pyspark import SparkContext # get the spark context in sc. workbook = xlsxwriter.Workbook('output_excel.xlsx') worksheet = workbook.add_worksheet() data = sc.textFile("xyz.txt") # xyz.txt is a file whose each line contains string delimited by <SPACE> row=0 def mapperFunc(x): for i in range(0,4): worksheet.write(row, i , x.split(" ")[i]) […]

空值不在“org.zuinnote.spark.office.excel”包中

Dataset<Row> SourcePropertSet = sqlContext.read() .format("com.crealytics.spark.excel") .option("location", "E:\\XLS\\NEWFILE.xlsx") .option("useHeader", "false") .option("treatEmptyValuesAsNulls", "true") .option("inferSchema", "true") .option("addColorColumns", "false") .load(); SourcePropertSet = SourcePropertSet.repartition(1).select("*") .write().option("treatEmptyValuesAsNulls", "true") .format("org.zuinnote.spark.office.excel") .mode(SaveMode.Overwrite) .save("E:\\XLS\\NEWFILE1.xlsx"); 对于上面的代码,在写入xslx格式时,还有其他选项可以考虑空值。 我得到scala.MatchError:nullexception引发,如果特定的列包含任何空值。 要解决的可能的解决scheme是通过正确的逻辑代码或寻找.options或有任何其他包以.xslx格式这样做?

如何在apache spark java中使用hadoop office库将数据集写入excel文件

目前我正在使用com.crealytics.spark.excel来读取excel文件,但是使用这个库我不能将数据集写入excel文件。 这个链接说使用hadoop办公库( org.zuinnote.spark.office.excel )我们可以读取和写入excel文件 请帮助我将数据集对象写入spark java中的excel文件。

什么是加载Excel文件的强制选项?

我使用下面的语法从S3加载了一个excel文件,但我想知道需要在这里设置的选项。 为什么必须设置下面所有的加载excel文件的选项? 这些选项都不是强制加载其他文件types,如csv,del,json,avro等 val data = sqlContext.read. format("com.crealytics.spark.excel"). option("location", s3path). option("useHeader", "true"). option("treatEmptyValuesAsNulls", "true"). option("inferSchema","true"). option("addColorColumns", "true"). load(path) 如果上面的任何选项(除了位置)都没有设置,我会得到下面的错误: sqlContext.read.format("com.crealytics.spark.excel").option("location", s3path).load(s3path) 错误信息 : Name: java.lang.IllegalArgumentException Message: Parameter "useHeader" is missing in options. StackTrace: at com.crealytics.spark.excel.DefaultSource.checkParameter(DefaultSource.scala:37) at com.crealytics.spark.excel.DefaultSource.createRelation(DefaultSource.scala:19) at com.crealytics.spark.excel.DefaultSource.createRelation(DefaultSource.scala:7) at org.apache.spark.sql.execution.datasources.DataSource.resolveRelation(DataSource.scala:345) at org.apache.spark.sql.DataFrameReader.load(DataFrameReader.scala:149) at org.apache.spark.sql.DataFrameReader.load(DataFrameReader.scala:132) at $anonfun$1.apply(<console>:47) at $anonfun$1.apply(<console>:47) at time(<console>:36)

如何从Scala Spark中的Excel(xls,xlsx)文件构造Dataframe?

我有一个大的Excel(xlsx and xls)文件与多个工作表,我需要将其转换为RDD或Dataframe以便它可以连接到其他dataframe Dataframe稍后。 我正在考虑使用Apache POI并将其保存为CSV ,然后在dataframe读取csv 。 但是,如果有任何图书馆或API可以帮助在这个过程中很容易。 任何帮助,高度赞赏。