阅读一本关于Spark的书。我可以创建具有多行的单列的数据帧/数据集,如下所示
val df = spark.range(10).toDF
df.count #=> 10
df.printSchema #=> id: long (nullable = false)
有没有办法动态创建具有多个列的数据帧/数据集?
我正在尝试做的是创建一个包含数千列的数据帧。因此,寻找动态创建它们的方法。
其中一种方法是执行以下操作
Seq(1 to 10 match{
case Seq(a, b, c, d, e, f, g, h, i, j) => (a, b, c, d, e, f, g, h, i, j)
}).toDF()
应该给你
+---+---+---+---+---+---+---+---+---+---+
|_1 |_2 |_3 |_4 |_5 |_6 |_7 |_8 |_9 |_10|
+---+---+---+---+---+---+---+---+---+---+
|1 |2 |3 |4 |5 |6 |7 |8 |9 |10 |
+---+---+---+---+---+---+---+---+---+---+
我希望答案对您有所帮助
编辑
如果你想在pyspark中做上述转换,你可以执行以下操作
sqlContext.createDataFrame([tuple(list(range(1,11)))])
您应该具有与上述相同的dataframe