簡體   English   中英

Pandas:比較 dataframe 與 csv 文件並更新 Z628CB5675FF524F3E719B7AA2E88FE3 文件

[英]Pandas: Compare dataframe with csv file and update the csv file

我有以下 ddataframe

          domain   hostname      ip address  status           managed by      monitor target name
0         jetty.com  aabb   XXX.XX.XX.XXX         Deployed  Sec Team  aabb.jetty.com
1         jetty.com  axcd   XXX.XX.XX.XXX         Deployed  Sec Team  axcd.jetty.com

現在我有另一個 csv 文件報告。csv

"domain","hostname","ip address","managed by", "monitor target name"
"jetty.com","aabb","XXX.XX.XX.XXX", "Decreased","OP Team", "aabb.jetty.com"
"jetty.com","axcd","XXX.XX.XX.XXX", "Decreased","OP2 Team", "axcd.jetty.com"
"jetty.com","appd","XXX.XX.XX.XXX", "Dec","OP8 Team", "appd.jetty.com"

 

現在我想將 df 與此 csv 進行比較,然后將 csv 更新為以下

"domain","hostname","ip address","managed by", "monitor target name"
"jetty.com","aabb","XXX.XX.XX.XXX", "Deployed","OP Team", "aabb.jetty.com"
"jetty.com","axcd","XXX.XX.XX.XXX", "Deployed","OP Team", "axcd.jetty.com"
"jetty.com","appd","XXX.XX.XX.XXX", "Dec","OP8 Team", "appd.jetty.com"

現在它已更新並且看起來與 df 中的相同

如何根據 df 值更新 csv 但不修改 csv 中已經存在的其他行

利用:

df2 = pd.read_csv('reporst.csv')

df1 = ddataframe.set_index(['domain','hostname','ip address'])
df2 = reporst.set_index(['domain','hostname','ip address'])

df2.update(df1)

df2.to_csv('out.csv')

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM