【发布时间】:2018-07-04 22:07:22
【问题描述】:
我想要解压缩 pyspark 数据框列中的元组列表
假设一列为[(blue, 0.5), (red, 0.1), (green, 0.7)],我想分成两列,第一列为[blue, red, green],第二列为[0.5, 0.1, 0.7]
+-----+-------------------------------------------+
|Topic| Tokens |
+-----+-------------------------------------------+
| 1| ('blue', 0.5),('red', 0.1),('green', 0.7)|
| 2| ('red', 0.9),('cyan', 0.5),('white', 0.4)|
+-----+-------------------------------------------+
可以使用以下代码创建:
df = sqlCtx.createDataFrame(
[
(1, ('blue', 0.5),('red', 0.1),('green', 0.7)),
(2, ('red', 0.9),('cyan', 0.5),('white', 0.4))
],
('Topic', 'Tokens')
)
而且,输出应该是这样的:
+-----+--------------------------+-----------------+
|Topic| Tokens | Weights |
+-----+--------------------------+-----------------+
| 1| ['blue', 'red', 'green']| [0.5, 0.1, 0.7] |
| 2| ['red', 'cyan', 'white']| [0.9, 0.5, 0.4] |
+-----+--------------------------------------------+
【问题讨论】:
-
你尝试过什么来达到你想要的结果?你对你的问题的研究表明了什么?你能提供你的尝试代码吗? How do I ask a good question、How much research effort is expected 和 How to create a Minimal, Complete, and Verifiable example 可能有助于改进您的问题。
-
您提供的代码不会产生您正在显示的数据框。
标签: list pyspark tuples spark-dataframe