Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/apache-spark/6.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Csv TXT文件读取";“空记录”;造成不良记录_Csv_Apache Spark_Text_Pyspark - Fatal编程技术网

Csv TXT文件读取";“空记录”;造成不良记录

Csv TXT文件读取";“空记录”;造成不良记录,csv,apache-spark,text,pyspark,Csv,Apache Spark,Text,Pyspark,我们正在读取一个以制表符分隔的.txt文件,没有值的记录缺少制表符。例如,Thor中M后面的选项卡丢失。使用Pyspark read读取文件会将记录移动到坏记录 Name Age Sex Final Cold 18 M Yes Bold 20 M No Thor 30 M Ice 40 Pyspark代码示例 source_schema = StructType([ StructField("Name", StringType(), True), St

我们正在读取一个以制表符分隔的.txt文件,没有值的记录缺少制表符。例如,Thor中M后面的选项卡丢失。使用Pyspark read读取文件会将记录移动到坏记录

Name    Age Sex Final
Cold    18  M   Yes
Bold    20  M   No
Thor    30  M
Ice 40
Pyspark代码示例

source_schema = StructType([
 StructField("Name", StringType(), True),
 StructField("Age", StringType(), True),
 StructField("Sex", StringType(), True),
 StructField("Final", StringType(), True)])

in_delimiter = "\t"

df_raw_file = sparkSession.read \
            .format("csv") \
            .option("delimiter", in_delimiter) \
            .option("header", "false") \
            .option("inferSchema", "true") \
            .option("nullValue", "null") \
            .option("treatEmptyValuesAsNulls", "true") \
            .option("columnNameOfCorruptRecord", "BAD_RECORD") \
            .schema(source_schema) \
            .load("CSV_READ.txt")
已经尝试了治疗空值空值和空值空值,但仍然没有成功,因为这些记录仍被记录在坏记录中


是否有任何其他可能的Spark选项可以尝试?

是否可以尝试显式应用模式而不是“推断模式”@Gladiator该模式被传递到读取函数源\u模式是否可以尝试显式应用模式而不是“推断模式”@Gladiator该模式被传递到读取函数源\u模式