如何删除数据框列中的空格并向其添加字符串“NA”?

Posted

技术标签:

【中文标题】如何删除数据框列中的空格并向其添加字符串“NA”?【英文标题】:How to remove the space in a column of dataframe and add string "NA" to it? 【发布时间】:2021-10-10 09:38:28 【问题描述】:

我有一个如下所示的数据框 (df)。但在传感器类型列中,我有一个字段为空白。我想用字符串“na”替换它。怎么做?

+----------+-------+
|sensortype|offline|
+----------+-------+
|Sensor1   |2      |
|Sensor1   |0      |
|          |2      |
+----------+-------+

我试过了,但没用:

df.withColumn("sensortype",regexp_replace(col("sensortype"),"\\s+","NA"))

【问题讨论】:

如果任何答案有助于解决问题,请检查答案旁边的 ✓ 符号。 【参考方案1】:

这应该可行:

df.withColumn("sensortype", when(length(col("sensortype"))===0,"NA")
.otherwise(col("sensortype")))

【讨论】:

【参考方案2】:

尝试将您的模式字符串 \\s+ 替换为 ^\\s*$

【讨论】:

以上是关于如何删除数据框列中的空格并向其添加字符串“NA”?的主要内容,如果未能解决你的问题,请参考以下文章

如何从 Python 的数据框列中的字符串中删除非字母数字字符?

Pyspark 删除数据框列中的多个字符

从数据框列中的字符串值中删除字符

计算数据框列中列表中单词的出现次数

我想从python中数据框列中的字符串链接中删除子字符串

如何使用模块 re 从数据框列中删除特殊字符? [复制]