更新 pyspark 的数据框列
Posted
技术标签:
【中文标题】更新 pyspark 的数据框列【英文标题】:Update pyspark's dataframe column 【发布时间】:2017-01-27 18:56:19 【问题描述】:我正在尝试从旧的数据框创建一个新的数据框,修改其中出现的元素。我有一个这样的数据框:
+-------+--------------------+--------------------+
| A | B | C|
+-------+--------------------+--------------------+
| 224.39|[2533695.47884,25...|[2.53311343446655...|
| 398.56|[2551303.18964,25...|[6740638.70550121...|
|1445.59|[2530998.06972,25...|[7839490.11546087...|
在 B 列和 C 列中有元素列表(每列的每行大约 100 个)。我想从这个数据框创建一个新的数据框,例如,每行 C 列中的 5 个元素。应该是这样的:
+-------+--------------------+--------------------+
| A | B | C|
+-------+--------------------+--------------------+
| 224.39|[2533695.47884,25...|[1,2,3,4,5] |
| 398.56|[2551303.18964,25...|[1,2,3,4,5] |
|1445.59|[2530998.06972,25...|[1,2,3,4,5] |
到目前为止,我只设法在一个新的数据框中提取了 C 列,并尝试使用 foreach(lambda x: x[0:5])
,但是这个 foreach 之后的数据框是一个 NoneType 元素,它不起作用。
提前致谢。
【问题讨论】:
【参考方案1】:我终于找到了一种方法来做到这一点。使用VectorSlicer 从 PCA 中选择特征非常简单。
【讨论】:
以上是关于更新 pyspark 的数据框列的主要内容,如果未能解决你的问题,请参考以下文章
python, pyspark : 获取 pyspark 数据框列值的总和
使用圆形函数转换 pyspark 数据框列不起作用(pyspark)