[問題] csv資料格式修改

看板Python作者 (sariel)時間10年前 (2015/02/24 22:28), 10年前編輯推噓1(103)
留言4則, 1人參與, 最新討論串1/1
想請問一下,我有個csv的資料內容如下: http://imgur.com/NYryEgS
希望修改成這樣的格式: http://imgur.com/qfoK9Sf
比如說: 第一個圖片中,中間的第一個"R5K7F9",移到最前面(範例第二張圖) 如果中間的代號是重複的像是第一個的"R5K7F9"右邊的第一個的"IPR006982"(第五列對應其位置) 其實跟第二個"R5K7F9"的左邊的"IPR006982"是一樣的(第四列對應其位置) 然後依序下來,希望能排成像是第二張圖的直行排列 簡單來說,我的每一行都是一對一對的(第一列資料跟第三列資料對應,而第二列是標記,第四列是第一列資料直線概念上的位置,第五列資料是第三列直線概念上的位置) 之前為了跑某些程式才把資料轉換成這種格式 想請問有沒有又快又簡單的寫法,可以把第一張圖的格式寫成第二張圖 -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 120.126.36.171 ※ 文章網址: https://www.ptt.cc/bbs/Python/M.1424788108.A.C56.html

02/25 01:02, , 1F
列=欄 (column) 對吧? 你的問題跟 #1KsuHJw9 很像
02/25 01:02, 1F

02/25 01:03, , 2F
因為轉換完的欄位長度不是固定的,在讀每一行的時候
02/25 01:03, 2F

02/25 01:04, , 3F
會受到前幾行的結果有不同的 state 。所以直覺上
02/25 01:04, 3F

02/25 01:05, , 4F
寫個 for loop 把連續的值 append,斷掉後 yield 出來
02/25 01:05, 4F
想到了,我主要的問題並不是欄位長度,而是如何取代前一個物件,原本的配對像是像是: a Y b b Y c 我希望轉換成: Y a b c 無論如何,謝謝你裡面提到append給了我靈感,直接每次check append的[-1]位置就好了 非常感謝 ※ 編輯: sariel0322 (182.234.196.206), 02/25/2015 02:35:26
文章代碼(AID): #1Kx8gCnM (Python)
文章代碼(AID): #1Kx8gCnM (Python)