将数组列追加到Spark DataFrame可以通过以下步骤实现:
from pyspark.sql import SparkSession
from pyspark.sql.functions import col, array
spark = SparkSession.builder.getOrCreate()
data = [("John", [1, 2, 3]), ("Alice", [4, 5, 6]), ("Bob", [7, 8, 9])]
df = spark.createDataFrame(data, ["Name", "ArrayColumn"])
df.show()
这将创建一个包含两列的DataFrame,其中一列是名为"Name"的字符串列,另一列是名为"ArrayColumn"的数组列。
new_array = [10, 11, 12]
withColumn
函数将数组列追加到DataFrame:df_with_array = df.withColumn("ArrayColumn", array(col("ArrayColumn"), array(new_array)))
df_with_array.show()
这将使用withColumn
函数将新的数组列追加到原始DataFrame的"ArrayColumn"列中。
完整代码示例:
from pyspark.sql import SparkSession
from pyspark.sql.functions import col, array
spark = SparkSession.builder.getOrCreate()
data = [("John", [1, 2, 3]), ("Alice", [4, 5, 6]), ("Bob", [7, 8, 9])]
df = spark.createDataFrame(data, ["Name", "ArrayColumn"])
df.show()
new_array = [10, 11, 12]
df_with_array = df.withColumn("ArrayColumn", array(col("ArrayColumn"), array(new_array)))
df_with_array.show()
这样,你就成功将数组列追加到了Spark DataFrame中。
领取专属 10元无门槛券
手把手带您无忧上云