【发布时间】:2017-03-20 21:23:57
【问题描述】:
如何在 Pyspark 中实现以下 R 代码
l = data.frame(d=c(1,2,4,7,8,15,17,19,20,25,26,29))
l$d2[1]= 0
l$d3[1]=c=1
for(i in 2:nrow(l))
{ l$d2[i]=l$d[i]-l$d[i-1]
c= ifelse(l$d2[i]<=3,c,c+1)
l$d3[i]=c
}
l
如果值大于或等于 3,我想遍历一个列并增加一个计数器。
eg :假设我的列中的元素是
1,2,2,3,2,1,5,2,1
标志应该是: 1,1,1,2,2,2,3,3,3
谢谢
【问题讨论】:
-
计数器很容易创建,你可以使用spark.apache.org/docs/latest/api/python/…,但是为了帮助你重写代码,你应该先展示你的实验
-
感谢您的帮助。如果值大于或等于 3,我想遍历一个列并增加一个计数器。例如:假设我的列中的元素是 1,2,2,3,2,1,5,2,1 标志应该是 : 1,1,1,2,2,2,3,3,3
-
嗨 - 我有类似的问题,你最后是怎么解决的?谢谢!
-
@zhifff : 我已经添加了解决方案
标签: python r apache-spark pyspark