Dataframe 在spark streaming中将列表转换为列

Dataframe 在spark streaming中将列表转换为列,dataframe,apache-spark,pyspark,Dataframe,Apache Spark,Pyspark,有人知道如何在spark streaming中将单列df(图片)转换为多列,如下所示: AT V AP RH 0 14.96 41.76 1024.07 73.17 1 25.18 62.96 1020.04 59.08 2 5.11 39.40 1012.16 92.14 3 20.86 57.32 1010.24 76.64 看看这是否有帮助: import pyspark.sql.fun

有人知道如何在spark streaming中将单列df(图片)转换为多列,如下所示:

     AT      V       AP     RH      
0  14.96  41.76  1024.07  73.17  
1  25.18  62.96  1020.04  59.08  
2   5.11  39.40  1012.16  92.14  
3  20.86  57.32  1010.24  76.64  
看看这是否有帮助:

import pyspark.sql.functions as F

df.select(
    *[F.col('s_values')[id].alias(i)
      for (id, i) in enumerate(['AT', 'V', 'AP', 'RH']) 
     ]
)
看看这是否有帮助:

import pyspark.sql.functions as F

df.select(
    *[F.col('s_values')[id].alias(i)
      for (id, i) in enumerate(['AT', 'V', 'AP', 'RH']) 
     ]
)

版本:Spark 3.0.1是dstream还是结构化流媒体?你能发布你到目前为止尝试过的内容吗?它是结构化流媒体,我基本上是从卡夫卡流中读取数据,但我需要y进行上面的转换,以用作ml模型的df输入。您的数组是否总是固定的?是的,它总是固定的版本:Spark 3.0.1它是数据流还是结构化流?您能发布您到目前为止尝试过的内容吗?它是结构化流,我基本上是从卡夫卡流中读取数据,但我需要y进行上面的转换,以用作ml模型的df输入。数组是否总是固定的?是的,它总是固定的。我收到一个错误,说F未定义,F应该是什么?@JavaTar请查看编辑的答案。我收到一个错误,说F未定义,F应该是什么?@JavaTar请看编辑后的答案