Python Pyspark RDD收集前163行
有没有一种方法可以在不转换为df的情况下获取rdd的前163行 我尝试过类似于Python Pyspark RDD收集前163行,python,apache-spark,pyspark,rdd,Python,Apache Spark,Pyspark,Rdd,有没有一种方法可以在不转换为df的情况下获取rdd的前163行 我尝试过类似于newrdd=rdd.take(163),但它返回一个列表,rdd.collect()返回整个rdd 有办法做到这一点吗?或者,如果没有,是否有办法将列表转换为rdd?这不是很有效,但您可以zipWithIndex和过滤器: rdd.zipWithIndex().filter(lambda vi: vi[1] < 163).keys() 如果我需要将大于163且小于200的行子集,我给出的vi[1]>163&&
newrdd=rdd.take(163)
,但它返回一个列表,rdd.collect()
返回整个rdd
有办法做到这一点吗?或者,如果没有,是否有办法将列表转换为rdd?这不是很有效,但您可以
zipWithIndex
和过滤器
:
rdd.zipWithIndex().filter(lambda vi: vi[1] < 163).keys()
如果我需要将大于163且小于200的行子集,我给出的vi[1]>163&&vi[1]<200不起作用。请帮助它处理以下代码行:data.zipWithIndex().filter(lambda vi:(vi[1]>163)和(vi[1]<200)).keys().count()
sc.parallelize(rdd.take(163))