python - 如何在 Spark 的 Dataframe 中使用现有列作为索引
问题描述
我正在将 python 代码“翻译”为 pyspark。我想使用现有列作为数据框的索引。我使用熊猫在python中做到了这一点。下面的一小段代码解释了我做了什么。感谢您的帮助。
df.set_index('colx',drop=False,inplace=True)
# Ordena index
df.sort_index(inplace=True)
我希望结果是一个以“colx”为索引的数据框。
解决方案
将索引作为列添加到 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"))
推荐阅读
- antlr - 使用 ANTLR 4 解析 SQL 'between' 和 'and' 表达式
- apache-kafka-streams - Kafka Streams 的 StreamsConfig.COMMIT_INTERVAL_MS_CONFIG 的合理值是多少
- entity-framework - 如何修复 EntityFrameworkCore 中的数据迁移错误?
- laravel - 在 laravel 上使用 put() 上传损坏的图像
- angular - 无法在角度 7 中执行另一个组件的方法
- ms-word - 隐藏后台按钮
- html - 如何修复 MaterializeCSS 垂直对齐
- apache-spark - 将 Spark 作业从 Windows 机器提交到远程纱线集群(Unix)
- javascript - Document.body.removeChild() 仅在调试模式下删除模式
- logging - 在 JBoss 7 中使用 Filter-spec 从堆栈跟踪日志中过滤中间件帧