我正在将python代码“翻译”为pyspark。我想使用现有的列作为数据框的索引。我是在python中使用pandas完成的。下面的一小段代码说明了我的工作。感谢您的帮助。
df.set_index('colx',drop=False,inplace=True)
# Ordena index
df.sort_index(inplace=True)
我希望结果是一个以'colx'作为索引的数据框。
答案 0 :(得分:1)
将索引作为列添加到pyspark数据框并使用
rdd_df = df.rdd.zipWithIndex()
df_index = rdd_df.toDF()
#and extract the columns
df_index = df_index.withColumn('colA', df_index['_1'].getItem("'colA"))
df_index = df_index.withColumn('colB', df_index['_1'].getItem("'colB"))
答案 1 :(得分:0)
这与Spark无关。没有这样的概念。
可以通过将DF转换为RDD并返回来将一列添加到RDD zipWithIndex中,但这是一个新列,因此不是一回事。