pyspark从列复制行
我怎样才能根据这个复制行pyspark从列复制行,pyspark,Pyspark,我怎样才能根据这个复制行 |source_ip |dest_ip |source_port|dest_port| |192.168.1.1|10.0.0.1|5343 |22 | 进入 使用pyspark?尝试使用数组和分解 示例: df.show() #+-----------+--------+-----------+---------+ #| ip| dest_ip|source_port|dest_port| #+-----------+---
|source_ip |dest_ip |source_port|dest_port|
|192.168.1.1|10.0.0.1|5343 |22 |
进入
使用pyspark?尝试使用
数组
和分解
示例:
df.show()
#+-----------+--------+-----------+---------+
#| ip| dest_ip|source_port|dest_port|
#+-----------+--------+-----------+---------+
#|192.168.1.1|10.0.0.1| 5343| 22|
#+-----------+--------+-----------+---------+
df.withColumn("arr",array(col("ip"),col("dest_ip"))).\
selectExpr("explode(arr) as ip","source_port","dest_port").\
show()
#+-----------+-----------+---------+
#| ip|source_port|dest_port|
#+-----------+-----------+---------+
#|192.168.1.1| 5343| 22|
#| 10.0.0.1| 5343| 22|
#+-----------+-----------+---------+
df.show()
#+-----------+--------+-----------+---------+
#| ip| dest_ip|source_port|dest_port|
#+-----------+--------+-----------+---------+
#|192.168.1.1|10.0.0.1| 5343| 22|
#+-----------+--------+-----------+---------+
df.withColumn("arr",array(col("ip"),col("dest_ip"))).\
selectExpr("explode(arr) as ip","source_port","dest_port").\
show()
#+-----------+-----------+---------+
#| ip|source_port|dest_port|
#+-----------+-----------+---------+
#|192.168.1.1| 5343| 22|
#| 10.0.0.1| 5343| 22|
#+-----------+-----------+---------+