从 pyspark 数据框中的列中提取特定字符串
Extract specific string from a column in pyspark dataframe
我有以下 pyspark 数据框。
column_a
name,age,pct_physics,country,class
name,age,pct_chem,class
pct_math,class
我必须只提取字符串中仅以 pct 开头的部分并丢弃其余部分。
预期输出:
column_a
pct_physics
pct_chem
pct_math
如何在 pyspark 中实现这个
使用regexp_extract
函数。
Example:
df.withColumn("output",regexp_extract(col("column_a"),"(pct_.*?),",1)).show(10,False)
#+----------------------------------+-----------+
#|column_a |output |
#+----------------------------------+-----------+
#|name,age,pct_physics,country,class|pct_physics|
#|name,age,pct_chem,class |pct_chem |
#+----------------------------------+-----------+
我有以下 pyspark 数据框。
column_a
name,age,pct_physics,country,class
name,age,pct_chem,class
pct_math,class
我必须只提取字符串中仅以 pct 开头的部分并丢弃其余部分。
预期输出:
column_a
pct_physics
pct_chem
pct_math
如何在 pyspark 中实现这个
使用regexp_extract
函数。
Example:
df.withColumn("output",regexp_extract(col("column_a"),"(pct_.*?),",1)).show(10,False)
#+----------------------------------+-----------+
#|column_a |output |
#+----------------------------------+-----------+
#|name,age,pct_physics,country,class|pct_physics|
#|name,age,pct_chem,class |pct_chem |
#+----------------------------------+-----------+