Python csv文件上的PySpark distinct().count()
我是spark的新手,我正在尝试根据csv文件的某些字段创建一个独特的().count() Csv结构(无标题): 要加载.csv,我键入:Python csv文件上的PySpark distinct().count(),python,apache-spark,pyspark,Python,Apache Spark,Pyspark,我是spark的新手,我正在尝试根据csv文件的某些字段创建一个独特的().count() Csv结构(无标题): 要加载.csv,我键入: lines = sc.textFile("test.txt") 然后,行上的不同计数按预期返回3: lines.distinct().count() 但我不知道如何根据id和country进行不同的计数 > P>在此情况下,您将选择要考虑的列,然后计数: sc.textFile("test.txt")\ .map(lambda line: (lin
lines = sc.textFile("test.txt")
然后,行
上的不同计数按预期返回3:
lines.distinct().count()
但我不知道如何根据
id
和country
进行不同的计数 > P>在此情况下,您将选择要考虑的列,然后计数:
sc.textFile("test.txt")\
.map(lambda line: (line.split(',')[0], line.split(',')[1]))\
.distinct()\
.count()
为了清楚起见,您可以优化lambda以避免调用
行。拆分
两次。拆分行可以优化如下:
sc.textFile("test.txt").map(lambda line: line.split(",")[:-1]).distinct().count()
sc.textFile("test.txt").map(lambda line: line.split(",")[:-1]).distinct().count()