假设我有一个包含逗号分隔数据的 RDD。每个逗号分隔的值表示一周中一天中的睡眠小时数。
所以对于即 [8,7,6,7,8,8,5]
如何操纵 RDD,使其只有星期一、星期三、星期五的值?顺便说一下,没有列名。但是 PySpark 平台似乎有 _co1,_co2,...,_coN 作为列。
假设我有一个包含逗号分隔数据的 RDD。每个逗号分隔的值表示一周中一天中的睡眠小时数。
所以对于即 [8,7,6,7,8,8,5]
如何操纵 RDD,使其只有星期一、星期三、星期五的值?顺便说一下,没有列名。但是 PySpark 平台似乎有 _co1,_co2,...,_coN 作为列。
我不知道您使用的是哪个版本,但我推荐DataFrames,因为大多数升级都是针对DataFrames 的。(我更喜欢火花2.3.2)
首先转换rdd为DataFrame:
df = rdd.toDF(["M","Tu","W","Th","F","Sa","Su"])
然后选择您要使用的日期:
df.select("M","W","F").show(3)
或直接使用mapwith lambda:
rdd.map(lambda x: [x[i] for i in [0,2,4])
希望能帮助到你!