给pyspark
中的dataframe
新增列
熟悉pandas
的pythoner
应该知道给dataframe
增加一列很容易,直接以字典形式指定就好了,pyspark
中就不同了,摸索了一下,可以使用如下方式增加
from pyspark import SparkContext
from pyspark import SparkConf
from pypsark.sql import SparkSession
from pyspark.sql import functions
spark = SparkSession.builder.config(conf=SparkConf()).getOrCreate()
data = [['Alice', 19, 'blue', '["Alice", 19, "blue"]'],
['Jane', 20, 'green', '["Jane", 20, "green"]'],
['Mary', 21, 'blue', '["Mary", 21, "blue"]'], ]
frame = spark.createDataFrame(data, schema=["name", "age", "eye_color", "detail"])
frame.cache()
frame.show()
+