我有一个非常大的pyspark.sql.dataframe.DataFrame,名为df.我需要一些枚举记录的方法 - 因此,能够访问具有特定索引的记录.(或选择索引范围的记录组)
在熊猫中,我可以做到
indexes=[2,3,6,7]
df[indexes]
Run Code Online (Sandbox Code Playgroud)
在这里,我想要类似的东西,(并且不将数据帧转换为pandas)
我能得到的最接近的是:
通过以下方式枚举原始数据框中的所有对象:
indexes=np.arange(df.count())
df_indexed=df.withColumn('index', indexes)
Run Code Online (Sandbox Code Playgroud)
问题:
它会在以后工作,如下所示:
indexes=[2,3,6,7]
df1.where("index in indexes").collect()
Run Code Online (Sandbox Code Playgroud)有没有更快更简单的方法来处理它?