Python 板


LINE

我想要將一些ID資料的屬性分門別類 (特定ID的位置例如出現在row[1]跟row[-1]的各算一類,row[1]~row[-1]算一類,不管row[0]) 因此用set想說避免調資料重複 以下是我的code: http://ppt.cc/63Ex 我讀取的資料大概是這種類型: http://ppt.cc/wnWU http://ppt.cc/Yytn 只有長度的問題 跑出來的結果: http://ppt.cc/k72m (上色是為了對答案,也是錯誤的地方,重複了) 遇到的問題: 原本依照我的分類應該會變成 >>> 特定的ID , 檔案名稱 , 該ID屬性 (e.g.Never present at C-terminal) 一個特定的ID跟一個檔案裡面應該只有一個屬性 但不知道為何變成 >>> 特定的ID , 檔案名稱 , 該ID屬性 (e.g.Never present at C-terminal) >>> 同樣的ID , 同樣檔案名稱 , 不一樣ID屬性 (多了 Never present at either terminal) 個人認為應該是判斷式那邊出了問題(not in 的部分?),但是檢查了很久還是不知道問題在哪 還請大家幫我看一下到底哪裡出了問題 我原本認為應該一個 ID 只會跑進一個if,但很明顯不是... --



※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 182.234.196.206
※ 文章網址: https://webptt.com/m.aspx?n=bbs/Python/M.1426906661.A.1E4.html
1F:推 flarehunter: 首先把變數名稱寫的更清楚一點可能可以找到bug 03/21 12:03
2F:→ flarehunter: 像是if i in n and i in c and i in m 03/21 12:04
3F:→ flarehunter: 就完全不知道是什麼意思 03/21 12:04
好的,抱歉 因為我把每一行分成三個位置 row[1],row[-1],row[2]~[-2] 然後建立三個set,分別是n、c、m n => row[1],c => row[-1],m => row[2]~row[-2] 然後判斷式則是判斷出現在哪幾個set裡面,像是: if i in n and i in c and i in m 這邊我想表達的是特定的ID都有出現在這三個set 也有條件是只出現在某兩個或只出現在某一個
4F:推 ccwang002: 如果你有 sample data 我想寫一篇怎麼使用 pdb debug 03/21 13:44
我不是用pdb喔,不過也很希望能看一下 ※ 編輯: sariel0322 (182.234.196.206), 03/21/2015 14:43:19
5F:→ ccwang002: pdb 是 Python 內建的 debugger 03/21 16:06
了解,我以為是某資料庫的sample data ※ 編輯: sariel0322 (182.234.196.206), 03/21/2015 16:46:01 ※ 編輯: sariel0322 (182.234.196.206), 03/21/2015 17:59:44
6F:→ ccwang002: 我好像懂為什麼會重覆了,你的 if 可能不是 exculsive 03/21 18:06
7F:→ ccwang002: 所以第一個 if 執行完就會再執行下一個 if,就會有兩行 03/21 18:07
8F:→ ccwang002: 可以每個 if 中加個 continue 或用 if ... elif 結構 03/21 18:08
我是有想過會再執行別的if,但是我應該已經用了if 的內容判斷式避免到再做這個動作吧? 因為我所想的狀況是利用這七個判斷式內容條件的不同 每一個ID應該只會對應到一個if 的狀況,但很明顯有些ID對應到兩三個if的狀況 因此我才很疑惑,我這七個的if判斷式應該是互斥的阿.... ※ 編輯: sariel0322 (182.234.196.206), 03/21/2015 18:13:42
9F:→ ccwang002: 等等,你把 8 種狀況都寫了我不覺得是 if 的問題 03/21 18:14
10F:→ ccwang002: 感覺是不同 filename 或 row 有重覆的 domain 03/21 18:14
對,這三個n、c、m集合都會有重複的domain沒錯 雖然有不同的filename,但是我在最後都會把這些集合清空 而且我的集合是用set(),if 判斷式的條件也有把這三個集合有重複的ID考慮進去了 而且我感覺是if的問題的原因是我的結果像是 3 domain protein 這一個filename就跑出兩個if 的結果了 ※ 編輯: sariel0322 (182.234.196.206), 03/21/2015 18:19:17
11F:→ ccwang002: 你的 domain 判斷在 row 的 for loop 裡喔 03/21 18:22
12F:→ ccwang002: 每讀一行都會把 domain 分類寫出來,這感覺很會重覆 03/21 18:23
這個原因是因為我不是要讀完所有的檔案一次做分析 而是要一個一個讀檔各自做分析,我是希望每讀一個檔案就用裡面的domain做分析一次 然後換下一個檔案時再把全部清空 ※ 編輯: sariel0322 (182.234.196.206), 03/21/2015 18:26:48
13F:→ ccwang002: 你是要讀一個檔分析一次而不是讀「一行」分析一次吧? 03/21 18:28
是的,所以是迴圈中出錯誤了嗎? ※ 編輯: sariel0322 (182.234.196.206), 03/21/2015 18:30:02
14F:→ ccwang002: 是的,你要把 for i in domain 移到 csv.reader(f) 外 03/21 18:30
15F:→ ccwang002: 現在流程是:開 csv,讀一行 + 更新 ncm + 判斷 domain 03/21 18:31
16F:→ ccwang002: 你想要的:開 csv,讀一行 + 更新 cnm,讀完判斷 domai 03/21 18:32
17F:→ ccwang002: 簡單來說,for in domain 往外縮排一格,然後要注意 03/21 18:34
好的,我試試看,非常感謝 ※ 編輯: sariel0322 (182.234.196.206), 03/21/2015 18:35:05
18F:→ ccwang002: n/m/c.clear()。改成每讀檔的時候 n = set() 重建吧 03/21 18:34
好的,非常感謝 ※ 編輯: sariel0322 (182.234.196.206), 03/21/2015 18:44:58 有了,非常感謝,目前只遇到一個新的問題... 只有3 domain protein也是我第一個圖讀的資料是錯誤的,有點奇怪,總之非常感謝你的幫忙 ※ 編輯: sariel0322 (182.234.196.206), 03/21/2015 18:47:25 ※ 編輯: sariel0322 (182.234.196.206), 03/21/2015 18:48:33







like.gif 您可能會有興趣的文章
icon.png[問題/行為] 貓晚上進房間會不會有憋尿問題
icon.pngRe: [閒聊] 選了錯誤的女孩成為魔法少女 XDDDDDDDDDD
icon.png[正妹] 瑞典 一張
icon.png[心得] EMS高領長版毛衣.墨小樓MC1002
icon.png[分享] 丹龍隔熱紙GE55+33+22
icon.png[問題] 清洗洗衣機
icon.png[尋物] 窗台下的空間
icon.png[閒聊] 双極の女神1 木魔爵
icon.png[售車] 新竹 1997 march 1297cc 白色 四門
icon.png[討論] 能從照片感受到攝影者心情嗎
icon.png[狂賀] 賀賀賀賀 賀!島村卯月!總選舉NO.1
icon.png[難過] 羨慕白皮膚的女生
icon.png閱讀文章
icon.png[黑特]
icon.png[問題] SBK S1安裝於安全帽位置
icon.png[分享] 舊woo100絕版開箱!!
icon.pngRe: [無言] 關於小包衛生紙
icon.png[開箱] E5-2683V3 RX480Strix 快睿C1 簡單測試
icon.png[心得] 蒼の海賊龍 地獄 執行者16PT
icon.png[售車] 1999年Virage iO 1.8EXi
icon.png[心得] 挑戰33 LV10 獅子座pt solo
icon.png[閒聊] 手把手教你不被桶之新手主購教學
icon.png[分享] Civic Type R 量產版官方照無預警流出
icon.png[售車] Golf 4 2.0 銀色 自排
icon.png[出售] Graco提籃汽座(有底座)2000元誠可議
icon.png[問題] 請問補牙材質掉了還能再補嗎?(台中半年內
icon.png[問題] 44th 單曲 生寫竟然都給重複的啊啊!
icon.png[心得] 華南紅卡/icash 核卡
icon.png[問題] 拔牙矯正這樣正常嗎
icon.png[贈送] 老莫高業 初業 102年版
icon.png[情報] 三大行動支付 本季掀戰火
icon.png[寶寶] 博客來Amos水蠟筆5/1特價五折
icon.pngRe: [心得] 新鮮人一些面試分享
icon.png[心得] 蒼の海賊龍 地獄 麒麟25PT
icon.pngRe: [閒聊] (君の名は。雷慎入) 君名二創漫畫翻譯
icon.pngRe: [閒聊] OGN中場影片:失蹤人口局 (英文字幕)
icon.png[問題] 台灣大哥大4G訊號差
icon.png[出售] [全國]全新千尋侘草LED燈, 水草

請輸入看板名稱,例如:WOW站內搜尋

TOP