【问题标题】:spark dataframe read text file without headers火花数据框读取没有标题的文本文件
【发布时间】:2017-02-20 13:32:42
【问题描述】:

我有一个没有标题的文本文件,我如何使用 spark dataframe api 读取它并指定标题。有没有办法指定我的架构

sample_data = spark.read.option("header", "false").text(sample)

print "数据大小为 {}".format(sample_data.count())

打印类型(sample_data)

打印 sample_data.take(2)

【问题讨论】:

    标签: python apache-spark dataframe pyspark


    【解决方案1】:

    首先,将文件保存为 csv。您可以指定架构:

    schema = StructType([ \
        StructField("column1", StringType(), True), \
        StructField("column2", DoubleType(), True), \
        StructField("column3", IntegerType(), True)])
    

    等等。 如果您使用的是 spark 2.0 +:

    spark.read.csv(
        "file.csv", header=True, schema=schema
    )
    

    如果您使用的是 spark

    sales = sqlContext.read.format('com.databricks.spark.csv')\
        .options(header='true', delimiter='whatever youre using as delimiter')\
        .load('file.csv', schema = schema)
    

    【讨论】:

    • 非常感谢。是否也可以在 python 中做,它的模式部分。
    • 我的错..这是python。
    【解决方案2】:
    df=spark.read.format("com.databricks.spark.csv").option("header", "true").option("inferschema", "true").option("mode", "DROPMALFORMED").load(<path_name>)
    # header can made to false, if there is no schema
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2015-05-13
      • 1970-01-01
      • 2017-05-19
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多