SELECT * FROM b_movie WHERE
movie_id IN ( SELECT movie_id FROM ( SELECT movie_id FROM b_movie GROUP BY movie_id HAVING count( movie_id )> 1 ) AS tmp1 )
mid NOT IN ( SELECT mid FROM ( SELECT min( mid ) mid FRO
在
spark
计算当中,我们日常有些简单需求,比如
去重
,比如有四
列
(appid、date、type、platform),我们只需要对appid,date进行
去重
,另外两
列
不关注。在
spark
中,distinct会对所有
列
执行
去重
操作,两行比较,只要有个一
列
有差异,就不算重复。
要解决,只对某几
列
进行
去重
,可以使用Top N 的思路,也就是先分组,分组后,我们只取row_num=1第一行就可以了。
具体实现代码如下:
//选出某几
列
,去掉空值
Dataset dataset = input.selec
1、https://
spark
.apache.org/docs/latest/api/
python
/reference/api/
pyspark
.RDD.html
1、去除重复
列
pyspark
.sql.DataFrame.dropDuplicates(subset=None)
作用:返回删除重复行的新 DataFrame,可选择仅考虑某些
列
。
Examples
from
pyspark
.sql import Row
df = sc.parallelize([ \
Row(name='Alice
pip install pycrypto 报错 error: command ‘C:\\Program Files (x86)\\Microsoft Visual Studio 14.0\\VC\\