在另一列pyspark中创建具有字符串长度的列

Posted

技术标签:

【中文标题】在另一列pyspark中创建具有字符串长度的列【英文标题】:create column with length of strings in another column pyspark 【发布时间】:2018-05-11 23:03:52 【问题描述】:

我在 pyspark 的数据框中有一列,如下面的“Col1”。我想创建一个新列“Col2”,其中包含“Col1”中每个字符串的长度。我是 pyspark 的新手,我一直在谷歌上搜索,但没有看到任何关于如何做到这一点的例子。非常感谢任何提示。

示例:

Col1 Col2
12   2
123  3

【问题讨论】:

compute string length in Spark SQL DSL的可能重复 【参考方案1】:

你可以使用length函数:

import pyspark.sql.functions as F
df.withColumn('Col2', F.length('Col1')).show()
+----+----+
|Col1|Col2|
+----+----+
|  12|   2|
| 123|   3|
+----+----+

【讨论】:

以上是关于在另一列pyspark中创建具有字符串长度的列的主要内容,如果未能解决你的问题,请参考以下文章

在另一列上复制在某些条件下具有空值的列

TSQL - 如何在另一列中提取具有最小值和最大值的列

尝试使用 MySQL 创建具有同一表中另一列的季节至今平均值的列

在另一列中使用一列中的值

在pyspark中将带有字符串json字符串的列转换为带有字典的列

Pyspark数据帧:根据另一列的值提取列