【发布时间】:2018-10-16 07:53:58
【问题描述】:
我正在尝试关注“如何制作马尔可夫链”的小插图 (http://datafeedtoolbox.com/attribution-theory-the-two-best-models-for-algorithmic-marketing-attribution-implemented-in-apache-spark-and-r/)。
本教程很有趣,因为它使用的数据源与我使用的相同。但是,部分代码正在使用“Spark SQL 代码”(我从上一个问题 Concat_ws() function in Sparklyr is missing 得到的回复)。
我的问题:我用谷歌搜索了很多,并试图自己解决这个问题。但我不知道怎么做,因为我不知道数据应该是什么样子(作者没有给出函数前后的DF示例)。
如何将这段代码转换为“普通”R 代码(不使用 Spark)(尤其是:concat_ws 和 collect_list 函数会造成问题
他正在使用这行代码:
channel_stacks = data_feed_tbl %>%
group_by(visitor_id, order_seq) %>%
summarize(
path = concat_ws(" > ", collect_list(mid_campaign)),
conversion = sum(conversion)
) %>% ungroup() %>%
group_by(path) %>%
summarize(
conversion = sum(conversion)
) %>%
filter(path != "") %>%
collect()
从我之前的问题,我知道我们可以替换一部分代码:
concat_ws() 可以代替 paste() 函数
但同样,另一部分代码正在跳转:
collect_list() # describtion: Aggregate function: returns a list of objects with duplicates.
我希望我尽可能清楚地描述了这个问题。
【问题讨论】: