pyspark - 在 pySpark 中定义自定义窗口函数
问题描述
我在 Spark 中有一个数据框,我想为它创建一个像这样递归定义的列:
new_column_row = f(last_column_row, other_parameters)
最好的方法是定义我的自定义窗口函数,但我在 PySpark 中找不到方法,有人遇到过同样的问题吗?
我正在处理的案例是:
我的问题是关于从订单列表中重建订单簿:
我有一个这样的数据框(值是我想要计算的)
size | price | output
1 | 1 | {1:1}
1.2 | 1.1 | {1:1, 1.2:1.1}
1.3 | - 1. | {1.2:1.1}
像这样在每一行更新输出(在python伪代码中)
- if price not in Output:
Output[price] = size
- if price in Output:
Output[price] = output[price] + size
if Output[price] = 0:
del Output[price]
解决方案
推荐阅读
- ios - 如果将交互添加到长按功能而不是覆盖功能,您如何调用 addGestureRecognizer?
- doctrine-orm - 如何设置最大结果查询包含左连接关系?
- react-admin - 向下钻取到显示视图时从缓存中使用GetOne
- javascript - 从反应表反应打开弹出窗口
- javascript - 精度四舍五入到 13 计数
- apache - .htaccess 将文件名 URL 的请求重写为对应的永久链接 URL
- python - 如何解决python kivy中拒绝的android 10存储权限
- javascript - 打印iframe时,iframe中的onafterprint停止在chrome中触发?
- c# - Asp.Net Net 5 强制浏览器从智能卡读取证书
- c++ - 无法构建 OMNeT++ 项目