等价groupyby()。unique()用于PySpark中的分类值

时间:2017-07-18 13:23:32

标签: python pandas pyspark pyspark-sql

我的数据如下。 It has three attributes: location, date, and student_id.

在熊猫,我可以做到

GROUPBY([ '位置', '日期'])[ 'student_id数据']。唯一的()

在不同日期查看每个学生同时去那里学习的地点。

我的问题是如何在PySpark中使用相同的groupby来提取相同的信息?谢谢。

2 个答案:

答案 0 :(得分:0)

假设您的数据包含以下格式的行:

$cell = $row->nextCell();
$cell->setColSpan(3);

你可以这样做:

(location, date, student_id)

答案 1 :(得分:0)

你可以在pyspark中使用collect_set来完成它,

 df.groupby('location','date').agg(F.collect_set('student_id')).show()

 +--------+----------+-----------------------+
 |location|      date|collect_set(student_id)|
 +--------+----------+-----------------------+
 |   18250|2015-01-04|               [347416]|
 |   18253|2015-01-02|       [167633, 188734]|
 |   18250|2015-01-03|               [363796]|
 +--------+----------+-----------------------+