Pyspark如何忽略/省略超过3个的记录

vlurs2pr  于 2022-11-01  发布在  Spark
关注(0)|答案(1)|浏览(131)

我的源CSV文件中包含以下数据

c1,c2,c3
1,4,46
2,6,246
4,7,542,87
5,7,623
5,7,623,32432

预期输出:

c1,c2,c3
1,4,46
2,6,246
5,7,623

如何删除/忽略记录,如果它是超过3而阅读文件到 Dataframe 。有任何特殊的选项在spark。read。csv API。我已经尝试了maxColumns选项,但它只是抛出错误。
如果我们在spark read API中没有任何选项,请帮助我使用该方法。
我想到了这个方法

spark.read.text().split(',').alias('columncount').filter(" columncount > 3")

但是如果我们有任何内置函数/选项在阅读时这样做就好了

czq61nw1

czq61nw11#

这应提供预期输出

spark.read.schema(schema).option("mode","DROPMALFORMED").csv('/FileStore/tables/altemetric_inter').show()

相关问题