删除PySpark数据框列中的最后几个字符

cph_sto:

我有一个PySpark DataFrame。如何从name下面的栏中删除/删除最后5个字符-

from pyspark.sql.functions import substring, length
valuesCol = [('rose_2012',),('jasmine_2013',),('lily_2014',),('daffodil_2017',),('sunflower_2016',)]
df = sqlContext.createDataFrame(valuesCol,['name'])
df.show()

+--------------+
|          name|
+--------------+
|     rose_2012|
|  jasmine_2013|
|     lily_2014|
| daffodil_2017|
|sunflower_2016|
+--------------+

我想创建2列,floweryear列。

预期产量:

+--------------+----+---------+
|          name|year|   flower|
+--------------+----+---------+
|     rose_2012|2012|     rose|
|  jasmine_2013|2013|  jasmine|
|     lily_2014|2014|     lily|
| daffodil_2017|2017| daffodil|
|sunflower_2016|2016|subflower|
+--------------+----+---------+

year 我创建的列-

df = df.withColumn("year", substring(col("name"),-4,4))
df.show()
+--------------+----+
|          name|year|
+--------------+----+
|     rose_2012|2012|
|  jasmine_2013|2013|
|     lily_2014|2014|
| daffodil_2017|2017|
|sunflower_2016|2016|
+--------------+----+

我不知道怎么砍最后五个字符,所以我只有花的名字。我通过调用尝试了类似的方法length,但这不起作用。

df = df.withColumn("flower",substring(col("name"),0,length(col("name"))-5))

如何创建flower仅包含花名的列?

阿里·耶西利(Ali Yesilli):

您可以使用expr函数

>>> from pyspark.sql.functions import substring, length, col, expr
>>> df = df.withColumn("flower",expr("substring(name, 1, length(name)-5)"))
>>> df.show()
+--------------+----+---------+
|          name|year|   flower|
+--------------+----+---------+
|     rose_2012|2012|     rose|
|  jasmine_2013|2013|  jasmine|
|     lily_2014|2014|     lily|
| daffodil_2017|2017| daffodil|
|sunflower_2016|2016|sunflower|
+--------------+----+---------+

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

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

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

来自分类Dev

用特定的字母组合查找表元素并删除最后几个字符

来自分类Dev

Powershell-通过删除最后几个字符来重命名文件名

来自分类Dev

输出字符串的最后几个字符-PHP / Yii

来自分类Dev

如何删除表格中特定列的前几个字符?

来自分类Dev

需要从Pandas Dataframe的一列中删除几个字符

来自分类Dev

如何从R列值中删除前几个字符?

来自分类Dev

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

来自分类Dev

删除未知索引处的几个字符

来自分类Dev

MYSQL删除连字符,然后获取当前日期的前几个字符

来自分类Dev

如何在Julia中替换字符串中的几个字符

来自分类Dev

如何从数据框中删除多个字符

来自分类Python

如何在Python中显示字符串的前几个字符?

来自分类Dev

检查字符串中的前几个字符

来自分类Dev

从字符串正则表达式中修剪前几个字符

来自分类Dev

仅选择字符串C ++中的前几个字符

来自分类Dev

Hive / Impala列注释在几个字符后被截断

来自分类Dev

如何替换数据框列中特定字符串的最后一个字符?

来自分类Dev

如何在单个函数中完成几个字符矢量格式化步骤?

来自分类Dev

根据spss中的前几个字符选择案例?

来自分类Dev

如何使用python从列中的所有数据中删除最后一个字符?

来自分类Python

从Python数据框的一列中的每一行中删除前x个字符

来自分类Dev

一个Regex如何只匹配Python中字符串的前几个字符?

来自分类Dev

从熊猫数据框中的字符串中删除“ x”个字符?

来自分类Dev

从列中提取几个字母(值在字符串中)

来自分类Dev

如何确定两个大熊猫常见列中有几个字符?

来自分类Dev

替换PySpark列中的最后两个字符

来自分类Dev

删除UNIX中特定列的最后一个字符

来自分类Dev

从整个数据框中删除一个字符

来自分类Dev

熊猫从数据框中删除所有单个字符

TOP 榜单

  1. 1

    来自Microsoft Office加载项taskpane.js的MySQL驱动程序模块的空引用

  2. 2

    任务':app:minifyReleaseWithR8'.java.lang.NullPointerException的执行失败(无错误消息)

  3. 3

    OpenJDK的和AdoptOpenJDK的区别

  4. 4

    如何解决npm问题?

  5. 5

    GitHub文件夹上有一个白色箭头

  6. 6

    在python中交互式旋转3D图-Matplotlib-Jupyter Notebook

  7. 7

    在熊猫中每隔一列取行平均值(python)

  8. 8

    未定义:grpc.SupportPackageIsVersion7 grpc.ServiceRegistrar

  9. 9

    TypeScript泛型错误:算术运算的左侧必须为“ any”,“ number”,“ bigint”类型

  10. 10

    无法导入大猩猩/mux(github.com/gorilla/[email protected]:在go.mod中明确要求,但在vendor / modules.txt中未标记为明确)

  11. 11

    tensorflow:仅在可用val_acc的情况下可以保存最佳模型,跳过

  12. 12

    使用moment.js获取不同时区的当前时间

  13. 13

    Nuxt.JS:如何在页面中获取路由URL参数

  14. 14

    如何在k8s中连接到我的mysql pod或mysql的节点?

  15. 15

    java.lang.NoClassDefFoundError:无法初始化类org.bytedeco.javacpp.avutil

  16. 16

    重命名由android 10中的应用程序创建的Mediastore的文件。正在使用Android API 30,但在API 29中显示错误

  17. 17

    Golang time.Parse()得到0001-01-01 00:00:00 +0000 UTC

  18. 18

    “无法上传。请重试。” Google Play控制台上的错误

  19. 19

    requestLegacyExternalStorage在Android 11中不起作用-API 30

  20. 20

    TypeScript TS7015:元素隐式地具有“ any”类型,因为索引表达式不是“ number”类型

  21. 21

    如何处理这个git警告?“不建议在不指定如何协调分歧分支的情况下进行拉动”

热门标签

归档