【问题标题】:How to read the csv and convert to RDD in sparkR如何在 sparkR 中读取 csv 并转换为 RDD
【发布时间】:2017-11-16 06:39:41
【问题描述】:

由于我是一名 R 程序员,我想使用 R 作为 spark 的接口,我使用 sparkR 包在 R 中安装了 sparkR。

我是 sparkR 的新手。我想对 CSV 记录中的特定数据执行一些操作。我正在尝试读取 csv 文件并将其转换为 rdd。

This is the code i did:
sc <- sparkR.init(master="local") # created spark content
data <- read.csv(sc, "/home/data1.csv")
#It throws an error, to use read.table

Data i have to load and convert - http://i.stack.imgur.com/sj78x.png

if am wrong, how to read this data in csv and convert to RDD in sparkR

TIA

【问题讨论】:

    标签: apache-spark rdd


    【解决方案1】:

    我认为问题出在标题行,如果您删除此行,它应该可以工作。

    How do I convert csv file to rdd

    --编辑过--

    使用此代码,您可以使用 CSV 测试 Sparkr,但您需要删除 CSV 文件中的标题行。

    lines <- textFile(sc, "/home/data1.csv") 
    csvElements <- lapply(lines, function(line) { 
    #line represent each CSV line i. e. strsplit(line, ",") is useful 
    })
    

    【讨论】:

    • 感谢您的回复,我想要R中的代码,如果可以的话,您可以写代码并显示。
    • Arun:我认为@Alvaro 所说的是,在导出 CSV 文件时,您必须在读取它之前去掉它的标题。
    • lines
    【解决方案2】:

    在最近的 SparkR 版本(2.0+)中

    read.df(path, source = "csv")
    

    在 Spark 1.x 中

    read.df(sc, path, source = "com.databricks.spark.csv")
    

    与

    spark.jars.packages  com.databricks:spark-csv_2.10:1.4.0
    

    【讨论】:

      【解决方案3】:

      下面的代码可以让你读取带有 header 的 csv。万事如意

      val csvrdd = spark.read.options(“header”,”true”).csv(filename)
      

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2015-11-27
        • 1970-01-01
        • 2020-03-06
        • 2014-08-09
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多