PySpark DataFrame 的 intersectAll(~)
方法返回一个新的 PySpark DataFrame,其中的行也存在于其他 PySpark DataFrame 中。与 intersect(~)
不同,intersectAll(~)
方法保留重复项。
注意
intersectAll(~)
方法与 SQL 中的 INTERSECT ALL
语句相同。
参数
1.other
| PySpark 数据帧
另一个PySpark 数据帧。
返回值
一个新的 PySpark 数据帧。
例子
考虑以下PySpark DataFrame:
df = spark.createDataFrame([("Alex", 20), ("Alex", 20), ("Bob", 30), ("Cathy", 40)], ["name", "age"])
df.show()
+-----+---+
| name|age|
+-----+---+
| Alex| 20|
| Alex| 20|
| Bob| 30|
|Cathy| 40|
+-----+---+
假设另一个PySpark DataFrame 是:
df_other = spark.createDataFrame([("Alex", 20), ("Alex", 20), ("David", 80), ("Eric", 80)], ["name", "age"])
df_other.show()
+-----+---+
| name|age|
+-----+---+
| Alex| 20|
| Alex| 20|
|David| 80|
| Eric| 80|
+-----+---+
在此,请注意以下事项:
-
唯一匹配的行是
Alex
的行 -
Alex
的行在df
和df_other
中出现两次
获取其他 PySpark DataFrame 中也存在的行,同时保留重复项
要获取其他 PySpark DataFrame 中也存在的行,同时保留重复项:
df_res = df.intersectAll(df_other)
df_res.show()
+----+---+
|name|age|
+----+---+
|Alex| 20|
|Alex| 20|
+----+---+
请注意以下事项:
-
Alex
的行重复,因为Alex
的行在df
和df_other
中分别出现两次。 -
如果
Alex
的行仅在一个 DataFrame 中出现一次,但在另一个 DataFrame 中出现多次,则Alex
的行将仅在生成的 DataFrame 中包含一次。 -
如果您只想包含一次重复行,请改用
intersect(~)
方法。
相关用法
- Python PySpark DataFrame intersect方法用法及代码示例
- Python Pandas DataFrame interpolate方法用法及代码示例
- Python Pandas DataFrame insert方法用法及代码示例
- Python Pandas DataFrame infer_objects方法用法及代码示例
- Python Pandas DataFrame index属性用法及代码示例
- Python Pandas DataFrame info方法用法及代码示例
- Python Pandas DataFrame items方法用法及代码示例
- Python Pandas DataFrame isin方法用法及代码示例
- Python Pandas DataFrame idxmin方法用法及代码示例
- Python Pandas DataFrame iloc属性用法及代码示例
- Python Pandas DataFrame idxmax方法用法及代码示例
- Python Pandas DataFrame iteritems方法用法及代码示例
- Python Pandas DataFrame isna方法用法及代码示例
- Python Pandas DataFrame iat属性用法及代码示例
- Python Pandas DataFrame itertuples方法用法及代码示例
- Python Pandas DataFrame iterrows方法用法及代码示例
- Python Pandas DataFrame isnull方法用法及代码示例
- Python Pandas DataFrame empty属性用法及代码示例
- Python Pandas DataFrame pop方法用法及代码示例
- Python Pandas DataFrame nsmallest方法用法及代码示例
- Python Pandas DataFrame sample方法用法及代码示例
- Python Pandas DataFrame max方法用法及代码示例
- Python Pandas DataFrame swaplevel方法用法及代码示例
- Python Pandas DataFrame agg方法用法及代码示例
- Python Pandas DataFrame copy方法用法及代码示例
注:本文由纯净天空筛选整理自Isshin Inada大神的英文原创作品 PySpark DataFrame | intersectAll method。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。