这个问题在这里已有答案:
我有一个脚本与以下设置。
我在用:
1)Spark数据帧以提取数据2)在初始聚合后转换为pandas数据帧3)想要转换回Spark以写入HDFS
Spark - > Pandas的转换很简单,但我正在努力解决如何将Pandas数据帧转换回spark的问题。
你能建议吗?
from pyspark.sql import SparkSession
import pyspark.sql.functions as sqlfunc
from pyspark.sql.types import *
import argparse, sys
from pyspark.sql import *
import pyspark.sql.functions as sqlfunc
import pandas as pd
def create_session(appname):
spark_session = SparkSession\
.builder\
.appName(appname)\
.master('yarn')\
.config("hive.metastore.uris", "thrift://uds-far-mn1.dab.02.net:9083")\
.enableHiveSupport()\
.getOrCreate()
return spark_session
### START MAIN ###
if __name__ == '__main__':
spark_session = create_session('testing_files')
我试过以下 - 没有错误,只是没有数据!要确认,df6确实有数据并且是pandas数据帧
df6 = df5.sort_values(['sdsf'], ascending=["true"])
sdf = spark_session.createDataFrame(df6)
sdf.show()
开始了:
# Spark to Pandas
df_pd = df.toPandas()
# Pandas to Spark
df_sp = spark_session.createDataFrame(df_pd)