组合具有相同时间戳的多行,并将值放入新列中



假设我的输入df如下所示:

<表类> 时间戳 名称 价值 tbody><<tr>14:00:002514:00:00 td>2415:00:002015:00:00C2116:00:002016:00:00 td>2216:00:00C2316:00:00D24

你所需要的是在pyspark中pivot,你可以使用pivot来实现像下面这样的旋转

df = spark.createDataFrame(
[('14:00:00','A',25),
('14:00:00','B',24),
('15:00:00','A',20),
('15:00:00','C',21),
('16:00:00','A',20),
('16:00:00','B',22),
('16:00:00','C',23),
('16:00:00','D',24)],("Timestamp", "name", "value"))

df1 = df.groupBy("Timestamp").pivot("name").sum("value")
df1.show() # this should display the expected results

相关内容

  • 没有找到相关文章

最新更新