使用pyspark在特定字符后截断数据帧列中的所有字符串

缠结者

我有一个df包含字符串列表的数据框,如下所示:

+-------------+
   Products
+-------------+
|     Z9L57.W3|
|     H9L23.05|
|     PRL57.AF|
+-------------+

我想在 '.' 之后截断列表。字符使其看起来像:

+--------------+
 Products_trunc
+--------------+
|     Z9L57    |
|     H9L23    |
|     PRL57    |
+--------------+

我尝试使用 split 函数,但它仅适用于单个字符串而不适用于列表。我也试过

df['Products_trunc'] = df['Products'].str.split('.').str[0]

但我收到以下错误:

类型错误:“列”对象不可调用

有没有人对此有任何见解?谢谢你

克罗诺克

如果您习惯了熊猫,您的代码看起来很像。pyspark 中的截断有点不同。看看下面:

from pyspark.sql import functions as F
l = [
(  'Z9L57.W3'  , ),
(  'H9L23.05'  ,),
(  'PRL57.AF'  ,)
]

columns = ['Products']

df=spark.createDataFrame(l, columns)

withColumn功能可以修改现有列或创建新的。该函数采用 2 个参数:column namecolumne expression当列名已经存在时,您将修改列。

df = df.withColumn('Products', F.split(df.Products, '\.').getItem(0))
df.show()

输出:

+--------+
|Products|
+--------+
|   Z9L57|
|   H9L23|
|   PRL57|
+--------+

当您选择一个不存在的列名称时,您将创建一个新列。

df = df.withColumn('Products_trunc', F.split(df.Products, '\.').getItem(0))
df.show()

输出:

+--------+--------------+ 
|Products|Products_trunc| 
+--------+--------------+ 
|Z9L57.W3|         Z9L57| 
|H9L23.05|         H9L23| 
|PRL57.AF|         PRL57| 
+--------+--------------+

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

在数据帧的所有元素中的特定位置插入子字符串(Python)

来自分类Dev

从字符串中截断多个值后选择所有内容

来自分类Dev

Splunk:删除列中特定字符串后的所有文本

来自分类Dev

如何从字符串中删除所有字符并仅在数据帧中保留数字?

来自分类Dev

如何在Python中出现所有特定模式的情况下拆分数据帧列中的字符串

来自分类Dev

检测到特定字符串后如何使用filter和dplyr如何删除数据帧中的行

来自分类Dev

如何从pyspark中的spark数据帧行转换具有多个键的JSON字符串?

来自分类Dev

如何使用列索引在第一列中删除以特定字符串开头的数据帧行

来自分类Dev

筛选所有列中包含特定字符串的行(使用dplyr)

来自分类Dev

筛选所有列中包含特定字符串的行(使用dplyr)

来自分类Dev

列出R中数据帧中的所有不同字符串

来自分类Dev

如何在pyspark中使用pandas_udf拆分数据帧中的字符串

来自分类Dev

使用pentaho排除具有特定值的数据[字符串中的子字符串]

来自分类Dev

从字符串中删除所有特定字符

来自分类Dev

如何获得特定索引后的所有字符串?

来自分类Dev

如果包含特定子字符串,则替换基于 Pandas 数据帧中的列值

来自分类Dev

如何在 PySpark 中用 NULL 替换数据框中所有列的字符串值?

来自分类Dev

将数据帧中的字符串分成两列

来自分类Dev

通过列中的子字符串屏蔽数据帧

来自分类Dev

用字符串中的数字替换“数据帧”列中的字符串

来自分类Dev

在数据帧的列中拆分字符串,并使用split返回新列

来自分类Dev

使用Python替换字符串中的所有特定字符

来自分类Dev

如何使用字符串(或某种其他类型的元数据)中的逻辑向(PySpark)数据帧添加新列?

来自分类Dev

匹配Cookie字符串中的所有内容,但特定键后的值除外

来自分类Dev

插入行后的SQL Server存储过程返回列数据的字符串值被截断

来自分类Dev

以R中特定字符串开头的所有列的行中各列之和

来自分类Dev

在smarty或javascript / jQuery中匹配特定单词后截断字符串

来自分类Dev

在MySQL中删除字符串后的所有内容

来自分类Dev

当一列中的字符串数最大时,Pandas使用groupby转换数据帧

Related 相关文章

  1. 1

    在数据帧的所有元素中的特定位置插入子字符串(Python)

  2. 2

    从字符串中截断多个值后选择所有内容

  3. 3

    Splunk:删除列中特定字符串后的所有文本

  4. 4

    如何从字符串中删除所有字符并仅在数据帧中保留数字?

  5. 5

    如何在Python中出现所有特定模式的情况下拆分数据帧列中的字符串

  6. 6

    检测到特定字符串后如何使用filter和dplyr如何删除数据帧中的行

  7. 7

    如何从pyspark中的spark数据帧行转换具有多个键的JSON字符串?

  8. 8

    如何使用列索引在第一列中删除以特定字符串开头的数据帧行

  9. 9

    筛选所有列中包含特定字符串的行(使用dplyr)

  10. 10

    筛选所有列中包含特定字符串的行(使用dplyr)

  11. 11

    列出R中数据帧中的所有不同字符串

  12. 12

    如何在pyspark中使用pandas_udf拆分数据帧中的字符串

  13. 13

    使用pentaho排除具有特定值的数据[字符串中的子字符串]

  14. 14

    从字符串中删除所有特定字符

  15. 15

    如何获得特定索引后的所有字符串?

  16. 16

    如果包含特定子字符串,则替换基于 Pandas 数据帧中的列值

  17. 17

    如何在 PySpark 中用 NULL 替换数据框中所有列的字符串值?

  18. 18

    将数据帧中的字符串分成两列

  19. 19

    通过列中的子字符串屏蔽数据帧

  20. 20

    用字符串中的数字替换“数据帧”列中的字符串

  21. 21

    在数据帧的列中拆分字符串,并使用split返回新列

  22. 22

    使用Python替换字符串中的所有特定字符

  23. 23

    如何使用字符串(或某种其他类型的元数据)中的逻辑向(PySpark)数据帧添加新列?

  24. 24

    匹配Cookie字符串中的所有内容,但特定键后的值除外

  25. 25

    插入行后的SQL Server存储过程返回列数据的字符串值被截断

  26. 26

    以R中特定字符串开头的所有列的行中各列之和

  27. 27

    在smarty或javascript / jQuery中匹配特定单词后截断字符串

  28. 28

    在MySQL中删除字符串后的所有内容

  29. 29

    当一列中的字符串数最大时,Pandas使用groupby转换数据帧

热门标签

归档