根据另一列的字符串搜索在Spark Dataframe中创建具有功能的新列

W4K1NG

我有一个火花数据框,其中的一列包含字符串值(即“ xyztext \ afadfa”)。我希望创建一个新列,其值取决于原始列是否包含某些文本(即“文本”),其值为“ 0”或“ 1”

结果示例:

## +---+---+------+---------+
## | x1| x2|   x3 | xnew    |
## +---+---+------+---------+
## |  1|  a| xtext|    1    |
## |  3|  B| abcht|    0    |

编辑:我以前尝试过此操作(现在已经添加了.cast(int)),这要归功于SGVD,但是当我插入列名时收到“ column is not callable”错误:df1 = df.withColumn('Target',df.column .contains('text')。cast('int'))

到目前为止,我取得的最好成绩是通过以下方式创建了一个包含0的列:

from pyspark.sql.functions import lit
df1 = df.withColumn('Target', lit(0))

我也尝试了if if else语句来创建向量,但是没有运气:

 def targ(string):
     if df.column.contains('text'): return '1'
     else: return '0'
sgvd

星火列有一个cast方法间的转换,你可以投一个boolean类型为整数,其中True被转换为1False0在Scala中,您可以Column#contains用来检查子字符串。PySpark没有此方法,但是您可以改用以下instr函数:

import pyspark.sql.functions as F
df1 = df.withColumn('Target', (F.instr(df.column, 'text') > 0).cast('int'))

您也可以将此函数编写为SQL表达式:

df1 = df.withColumn('Target', F.expr("INSTR(column, 'text') > 0").cast('int'))

或者,完全在SQL中不进行强制转换:

df1 = df.withColumn('Target', F.expr("IF(INSTR(column, 'text') > 0, 1, 0)"))

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

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

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

根据字母“l”或“L”是否在另一列的字符串中创建新列

来自分类Dev

熊猫:创建新列,条件是对一列的子字符串搜索和另一列的逆搜索

来自分类Dev

根据另一列的字符串创建一个新列

来自分类Dev

Excel:如何从另一列中的一列搜索子字符串

来自分类Dev

Oracle SQL,在包含来自另一列的字符串的一列中搜索字符串

来自分类Dev

来自另一列中一列的SQL搜索字符串

来自分类Dev

根据另一列中包含的字符串在新列中添加值

来自分类Dev

根据另一列中的字符串从列创建列表

来自分类Dev

pyspark:根据另一列中包含的字符串创建列

来自分类Dev

根据另一列中的初始字符串添加列值

来自分类Dev

使用R根据字符串是否在另一列中来更改列的值

来自分类Dev

Pyspark 根据另一列的模式替换列中的字符串

来自分类Dev

R:根据另一列中的值从一列中的拆分字符串中检索数据

来自分类Dev

根据另一列中的值,用字符串替换一列中的NaN

来自分类Dev

根据另一列中的值,将一列中的NaN替换为字符串

来自分类Dev

使用r根据另一列中的值编辑字符串值

来自分类Dev

根据另一列中的字符串数据查找行号

来自分类Dev

R编程:根据另一列中的值从拆分字符串中选择元素

来自分类Dev

如何根据postgresql中的另一列对字符串聚合进行排序?

来自分类Dev

如何从R中另一列的子字符串中创建一列?

来自分类Dev

根据另一列(Python Pandas)的值在列中添加一部分字符串

来自分类Dev

从另一列中删除字符串元素

来自分类Dev

根据另一列中的字符串片段选择熊猫数据框列中的数据

来自分类Dev

如何根据另一列 SQL 中的值创建具有计数值的新列

来自分类Dev

从另一列替换匹配的行字符串

来自分类Dev

如何创建一列字符串,包括另一列的值

来自分类Dev

搜索列中的字符串并通过在 Pandas 的数据框中添加另一列来提及该字符串

来自分类Dev

根据另一列/类型错误更新熊猫数据框列:字符串索引必须是整数

来自分类Dev

在R中将一列中的字符串提取到另一列中

Related 相关文章

  1. 1

    根据字母“l”或“L”是否在另一列的字符串中创建新列

  2. 2

    熊猫:创建新列,条件是对一列的子字符串搜索和另一列的逆搜索

  3. 3

    根据另一列的字符串创建一个新列

  4. 4

    Excel:如何从另一列中的一列搜索子字符串

  5. 5

    Oracle SQL,在包含来自另一列的字符串的一列中搜索字符串

  6. 6

    来自另一列中一列的SQL搜索字符串

  7. 7

    根据另一列中包含的字符串在新列中添加值

  8. 8

    根据另一列中的字符串从列创建列表

  9. 9

    pyspark:根据另一列中包含的字符串创建列

  10. 10

    根据另一列中的初始字符串添加列值

  11. 11

    使用R根据字符串是否在另一列中来更改列的值

  12. 12

    Pyspark 根据另一列的模式替换列中的字符串

  13. 13

    R:根据另一列中的值从一列中的拆分字符串中检索数据

  14. 14

    根据另一列中的值,用字符串替换一列中的NaN

  15. 15

    根据另一列中的值,将一列中的NaN替换为字符串

  16. 16

    使用r根据另一列中的值编辑字符串值

  17. 17

    根据另一列中的字符串数据查找行号

  18. 18

    R编程:根据另一列中的值从拆分字符串中选择元素

  19. 19

    如何根据postgresql中的另一列对字符串聚合进行排序?

  20. 20

    如何从R中另一列的子字符串中创建一列?

  21. 21

    根据另一列(Python Pandas)的值在列中添加一部分字符串

  22. 22

    从另一列中删除字符串元素

  23. 23

    根据另一列中的字符串片段选择熊猫数据框列中的数据

  24. 24

    如何根据另一列 SQL 中的值创建具有计数值的新列

  25. 25

    从另一列替换匹配的行字符串

  26. 26

    如何创建一列字符串,包括另一列的值

  27. 27

    搜索列中的字符串并通过在 Pandas 的数据框中添加另一列来提及该字符串

  28. 28

    根据另一列/类型错误更新熊猫数据框列:字符串索引必须是整数

  29. 29

    在R中将一列中的字符串提取到另一列中

热门标签

归档