内置函数,用另一个datafram的列中的值替换给定列中所有出现的值

2024-03-28 09:54:54 发布

您现在位置:Python中文网/ 问答频道 /正文

我在PySpark中有两个数据帧,比如A,B,其结构如下所示。我想用Dataframe B中的查找值更新Dataframe a列中的值。PySpark中是否有内置函数来实现这一点,或者我必须递归地运行pyspark.sql.functions.regexp_replace?你知道吗

DataFrame A               Dataframe B             Resultant
---------------           ---------------       --------------- 
| seqn | colB |           | colX | colY |       | colA | colB  |  
---------------           ---------------       ---------------
| s1   | x,y,z|           | p    | c    |       | a    | e,f,g |
| s2   | p,y,r|  takes    | r    | d    |  ==>  | a    | c,f,g |
| s3   | y,z  |  value    | x    | e    |       | a    | f,g   |
| s4   | p,z  |  from     | y    | f    |       | a    | c,g   |
---------------           | z    | g    |       ---------------- 
                          ---------------

Tags: 数据函数dataframesqlfunctions结构内置replace