Python spark从数据框中提取字符
Posted
技术标签:
【中文标题】Python spark从数据框中提取字符【英文标题】:Python spark extract characters from dataframe 【发布时间】:2016-12-01 17:10:41 【问题描述】:我在 spark 中有一个数据框,如下所示:
ID | Column
------ | ----
1 | STRINGOFLETTERS
2 | SOMEOTHERCHARACTERS
3 | ANOTHERSTRING
4 | EXAMPLEEXAMPLE
我想做的是从列中提取前 5 个字符加上第 8 个字符并创建一个新列,如下所示:
ID | New Column
------ | ------
1 | STRIN_F
2 | SOMEO_E
3 | ANOTH_S
4 | EXAMP_E
我不能使用下面的codem,因为列中的值不同,我不想在特定字符上拆分,而是在第6个字符上:
import pyspark
split_col = pyspark.sql.functions.split(DF['column'], ' ')
newDF = DF.withColumn('new_column', split_col.getItem(0))
谢谢大家!
【问题讨论】:
【参考方案1】:使用这样的东西:
df.withColumn('new_column', concat(df.Column.substr(1, 5),
lit('_'),
df.Column.substr(8, 1)))
这里使用函数substr和concat
这些功能将解决您的问题。
【讨论】:
以上是关于Python spark从数据框中提取字符的主要内容,如果未能解决你的问题,请参考以下文章
如何从python中的pandas数据框中的列中提取关键字(字符串)