Python Pyspark rdd命令做什么?
我刚刚开始使用pyspark,我有一个问题(可能太简单了,但我看不出来) 我有一个动物物种的数据框架,包括“类别”、“名称”和“状态”列 我使用这个命令来获取有关类别列的一些信息:Python Pyspark rdd命令做什么?,python,dataframe,pyspark,Python,Dataframe,Pyspark,我刚刚开始使用pyspark,我有一个问题(可能太简单了,但我看不出来) 我有一个动物物种的数据框架,包括“类别”、“名称”和“状态”列 我使用这个命令来获取有关类别列的一些信息: df.groupBy('category').count().show() 屈服: +-----------------+-----+ | category|count| +-----------------+-----+ | Vascular Plant| 4470| |
df.groupBy('category').count().show()
屈服:
+-----------------+-----+
| category|count|
+-----------------+-----+
| Vascular Plant| 4470|
| Bird| 521|
| Mammal| 214|
| Amphibian| 80|
|Nonvascular Plant| 333|
| Fish| 127|
| Reptile| 79|
+-----------------+-----+
然后我用了这句话:
df.select('category').rdd.countByValue()
得到这个:
defaultdict(int,
{Row(category='Bird'): 521,
Row(category='Reptile'): 79,
Row(category='Fish'): 127,
Row(category='Vascular Plant'): 4470,
Row(category='Nonvascular Plant'): 333,
Row(category='Amphibian'): 80,
Row(category='Mammal'): 214})
所以我的问题是:“rdd”部分向代码中添加了什么?我相信您正在通过调用
.rdd
方法将spark数据帧转换为rdd对象。这就是为什么会得到一个defaultdict back()而不是一个表
有关转换函数的更多详细信息,请参阅。RDD是spark中数据集的逻辑表示形式。它存储在多台机器上,在集群的情况下也可以是服务器。这些是不可变的,在发生故障时可以恢复 数据集是用户从外部加载的数据。可以来自任何来源,无论是数据库还是简单的文本文件 请参阅以下连结:
好的,通过添加“rdd”,我正在“保存”我正在使用的多机器系统中的结果信息集。我说的对吗?这些值的参考值