Spark 2.1.1中的Pyspark,StructType中的StructFields始终可以为空

时间:2017-06-15 16:01:50

标签: pyspark

我正在使用多个StructField创建一个StructType - 名称和数据类型似乎工作正常,但无论在每个StructField中将nullable设置为False,结果模式报告nullable对于每个StructField都为True。

任何人都可以解释原因吗?谢谢!

printf "%0.2f\n" for @floats;

1 个答案:

答案 0 :(得分:0)

这是Spark中的known issue。目前Spark中有open pull request旨在解决此问题。如果您确实需要字段不可为空,请尝试:

#read csv file and apply dfStruct as the schema
df = sparkSession.read.csv(path = "/<path tofile>/stock_data.csv", \
                       schema = dfStruct, \
                       sep = ",", \
                       ignoreLeadingWhiteSpace = True, \
                       ignoreTrailingWhiteSpace = True \
                       ).rdd.toDF(dfStruct)