我有一个pyspark数据框,记录了用户在某个网站上的登录会话数,每一天都是按注册日划分的。我想把这些计数除以注册当天的计数,得到分数。这意味着,当daysSinceRegistration字段为0时,分数值将始终为1。在
+----------+----------+---------------------+-----+
|sessionDay| regDate|daysSinceRegistration|count|
+----------+----------+---------------------+-----+
|2019-06-11|2019-06-10| 1| 6463|
|2019-06-11|2019-06-11| 0|14452|
|2019-06-11|2019-06-09| 2| 3878|
+----------+----------+---------------------+-----+
我知道这可以通过以下方式实现:
^{2}$但是,这需要一个非常重的collect()
调用,并且这段代码需要在短时间内运行很多次(大约300个不同的数据帧)。调用collect()
似乎不是理想的方法。在
有没有办法不用调用这个collect()
调用就可以得到我想要的结果吗?在
目前没有回答
相关问题 更多 >
编程相关推荐