dim*_*zak 7 python apache-spark pyspark
我是新手,我正在尝试根据csv文件的某些字段创建一个distinct().count().
Csv结构(没有标题):
id,country,type
01,AU,s1
02,AU,s2
03,GR,s2
03,GR,s2
Run Code Online (Sandbox Code Playgroud)
加载.csv我输入:
lines = sc.textFile("test.txt")
Run Code Online (Sandbox Code Playgroud)
然后lines根据预期对返回的3 进行明确计数:
lines.distinct().count()
Run Code Online (Sandbox Code Playgroud)
但是我不知道如何根据我们说id和做出明确的计数country.
在这种情况下,您将选择要考虑的列,然后计数:
sc.textFile("test.txt")\
.map(lambda line: (line.split(',')[0], line.split(',')[1]))\
.distinct()\
.count()
Run Code Online (Sandbox Code Playgroud)
这是为了清楚起见,您可以优化lambda以避免调用line.split两次.
| 归档时间: |
|
| 查看次数: |
24581 次 |
| 最近记录: |