我有一个PySpark嵌套框架,如果一列的值存在于另一个嵌套框架中,我想根据条件将它分成两个嵌套框架。
例如,我的输入框看起来像:
| Product | Category |
| ----------- | ----------------|
| Product A | Food |
| Product B | Food |
| Product C | leisure goods. |
| Product D | drinks |
第二个框架是:
| Product Categories |
| -------------------|
| Food |
| leisure goods |
因此,我想有两个由类别分裂的第二个嵌套框架:
df1.show()
| Product | Category |
| ----------- | ----------------|
| Product A | Food |
| Product B | Food |
| Product C | leisure goods. |
df2.show()
| Product | Category |
| ----------- | ----------------|
| Product D | drinks |
当然,我可以在同一个框架上做两个过滤器操作,但我希望运行时间更长。
1条答案
按热度按时间oalqel3c1#
我尝试使用join操作来重新生成PySpark,根据Category列存在于第二个DataFrame中的条件来过滤DataFrame。
下面是代码:
通过遵循上述方法,您可以根据条件df1_filtered包含df2中存在的类别的行,而df2_filtered包含df2中不存在的类别的行,将DataFrame拆分为两个DataFrame。