找回密碼 或 安全提問
 註冊
|註冊|登錄

伊莉討論區

搜索
感激所有對伊莉作出奉獻的人尊貴會員無限觀看附件圖片你準備好成為出色的版主了嗎?
julia巨乳fate催眠ntr旬果母乳
排球少年alexis wnights o征服美艳hack淫獄帝greatest

休閒聊天興趣交流學術文化旅遊交流飲食交流家庭事務PC GAMETV GAME
熱門線上其他線上感情感性寵物交流家族門派動漫交流貼圖分享BL/GL
音樂世界影視娛樂女性頻道潮流資訊BT下載區GB下載區下載分享短片
電腦資訊數碼產品手機交流交易廣場網站事務長篇小說體育運動時事經濟
上班一族博彩娛樂

[繁]我的英雄學院 Mem

中和廣福路 不滿轎車

[繁]怪獸8號02-

[繁]戰隊大失格03-

(4月新番)[繁]怪人的

(4月新番)[繁]恰如細
電腦新資訊電腦軟體討論電腦軟體資訊分享電腦硬體討論電腦硬體資訊分享電腦萌化版電腦系統 OS 討論電腦程式設計
電腦設計技術交流圖像設計及交流各類下載工具教學寬頻上網討論
查看: 37768|回復: 5
打印上一主題下一主題

[問題]python csv資料比對問題[複製鏈接]

Rank: 2Rank: 2

帖子
168
積分
370 點
潛水值
9448 米
跳轉到指定樓層
樓主
發表於 2021-6-6 03:42 PM|只看該作者|倒序瀏覽
回覆中加入附件並不會使你增加積分,請使用主題方式發佈附件。
如題,最近想做csv參數比對,但不曉得往哪個方向做,不知道各位大大可以指點一下小的我嗎?

用途:

用a.csv檔的Number欄位當KeyWord去搜尋b.csv檔是否存在,
在用 data1 ~ data6做資料比對,若data1 ~ data6其中1個資料不同,
則把2筆資料寫到c.csv檔。

a.csv
NAMEDATENumberdata1data2data3data4data5data6
Kobe2021/06/031----------------------------test11080
Kobe2021/06/031----------------------------test22082
Kobe2021/06/032----------------------------test32096
Kobe2021/06/032----------------------------test42097
Kobe2021/06/033----------------------------test510129
Kobe2021/06/033----------------------------test62098
Kobe2021/06/034----------------------------test710916
...
瀏覽完整內容,請先 註冊登入會員
分享分享0收藏收藏0支持支持0
回覆中加入附件並不會使你增加積分,請使用主題方式發佈附件。

使用道具檢舉

Rank: 6Rank: 6Rank: 6Rank: 6Rank: 6Rank: 6

帖子
155
積分
1287 點
潛水值
47855 米
頭香
發表於 2021-6-8 12:20 PM|只看該作者
本帖最後由 tryit244178 於 2021-6-8 12:25 PM 編輯

簡單粗爆的方法就是,一行一行的比對。先把b的第一行,拿去跟a的第一、二、三、四、五……行比對;然後把b的第二行,拿去跟a的第一、二、三、四、五……行比對……以此類推。

用a.csv檔的Number欄位當KeyWord去搜尋b.csv檔是否存在。
宣告一個list的變數,把b拿來跟a比對,如果Number的值相同,就push。
...
瀏覽完整內容,請先 註冊登入會員
回覆中加入附件並不會使你增加積分,請使用主題方式發佈附件。

使用道具檢舉

Rank: 1

帖子
171
積分
186 點
潛水值
6230 米
3
發表於 2021-6-19 09:49 PM|只看該作者
若有安裝色情守門員,可用無界、自由門等軟件瀏覽伊莉。或使用以下網址瀏覽伊莉: http://www.eyny.com:81/index.php
我有點看不太懂需求,但你要不要試試看把兩個 csv 都倒進 sqlite db 裡面變成兩個 table,然後再把兩邊的 table join 起來?
回覆中加入附件並不會使你增加積分,請使用主題方式發佈附件。

使用道具檢舉

  高級幼兒生(30/200)

悠風 蘿莉萌

Rank: 1

帖子
172
積分
199 點
潛水值
14020 米
4
發表於 2021-6-22 09:41 AM|只看該作者
所有積分大於負-100的壞孩子,將可獲得重新機會成為懲罰生,權限跟幼兒生一樣。
先實作row的欄位成物件(model),然後將a.csv、b.csv的資料分別以model放到兩個list,分別是alist、blist,接著就迭代兩個list比對每一個物件的屬性就可以了

風動、雨落,轉瞬逝去。追。楓葉紛飛即能讓心悸動,只因那一刻的永恆,閃耀而停留。

使用道具檢舉

Rank: 2Rank: 2

帖子
168
積分
370 點
潛水值
9448 米
5
發表於 2021-6-25 06:59 PM|只看該作者
codewice 發表於 2021-6-19 09:49 PM
下載: 訪客無法瀏覽下載點,請先 註冊登入會員

我有點看不太懂需求,但你要不要試試看把兩個 csv 都倒進 sqlite db 裡面變成兩個 table,然後再把兩邊的 t ...

講簡單一點就是 我想設條件去比對2個檔案的差異性,
...
瀏覽完整內容,請先 註冊登入會員





成為伊莉的版主,你將獲得更高級和無限的權限。把你感興趣的版面一步步地發展和豐盛,那種滿足感等著你來嚐嚐喔。

使用道具檢舉

Rank: 1

帖子
15
積分
55 點
潛水值
2890 米
6
發表於 2021-7-11 02:13 PM|只看該作者
若對尊貴或贊助會員有任何疑問,歡迎向我們查詢。我們的即時通或MSN: admin@eyny.com
本帖最後由 ilikeatom 於 2021-7-11 07:53 PM 編輯

import pandas as pd
import numpy as np


#用pandas載入資料
a = pd.read_csv("a.csv").fillna("none") #用文字的none取代空值是因為比較空值的時候會有nan不等於nan的問題
b = pd.read_csv("b.csv").fillna("none")


#以Nmber相同來合併資料
ab_merge = pd.merge(a,b,on = "Number",suffixes = ("_a","_b"))
#插入Nmber
ab_merge.insert(11,"Number_b",c.Number) #為了讓這張表的左右欄位都相同
ab_merge
...
瀏覽完整內容,請先 註冊登入會員

使用道具檢舉

您需要登錄後才可以回帖 登錄 | 註冊

Powered by Discuz!

© Comsenz Inc.

重要聲明:本討論區是以即時上載留言的方式運作,對所有留言的真實性、完整性及立場等,不負任何法律責任。而一切留言之言論只代表留言者個人意見,並非本網站之立場,用戶不應信賴內容,並應自行判斷內容之真實性。於有關情形下,用戶應尋求專業意見(如涉及醫療、法律或投資等問題)。 由於本討論區受到「即時上載留言」運作方式所規限,故不能完全監察所有留言,若讀者發現有留言出現問題,請聯絡我們。有權刪除任何留言及拒絕任何人士上載留言,同時亦有不刪除留言的權利。切勿上傳和撰寫 侵犯版權(未經授權)、粗言穢語、誹謗、渲染色情暴力或人身攻擊的言論,敬請自律。本網站保留一切法律權利。
回頂部