如何解决pyspark列重复行
如何根据此重复行
|source_ip |dest_ip |source_port|dest_port|
|192.168.1.1|10.0.0.1|5343 |22 |
进入
|ip |source_port|dest_port|
|192.168.1.1|5343 |22 |
|10.0.0.1 |5343 |22 |
使用pyspark吗?
解决方法
尝试使用 array
和 explode
。
Example:
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|
#+-----------+-----------+---------+
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。