[建議] 用於處理分欄位文字檔的程式語言或軟體已刪文

看板Programming作者 (Neisseria)時間7年前 (2017/02/21 14:03), 7年前編輯推噓2(202)
留言4則, 3人參與, 最新討論串1/2 (看更多)
我們實驗室最近在跑某個科學運算軟體 出來的格式是以 tab 分欄的文字檔,如下例: case 2 case 4 case 1 case 3 ctrl 3 ctrl 2 ctrl 4 ctrl 1 item 1 item 2 item 3 ... 主要的問題在於 case 1, case 2, case 3, ... 和 ctrl 1, ctrl 2, ctrl 3, ... 的順序會隨機排列,而且找不到參數去改變這個行為 目前只能手動將其按順序重排 我自己先前是用 GAWK (GNU AWK) 來處理 但是現在這部分想轉給其他同學做,而這些同學大部分沒啥程式設計經驗 想問有沒有相對友善的程式語言或工具可用? 我自己有想到以下方案: 1. Babun (Cygwin) + GAWK 2. CSVKit 3. Excel 選項 1. 對沒 Unix-like 系統經驗的人來說似乎不太友善,我介紹幾個身邊的人 使用,似乎最後都不了了之。雖然 AWK 其實不難學,但對不懂文字流的使用者來說 似乎不太好上手 選項 2. 似乎有點希望,雖然也是要打指令,至少比 AWK 好學一些些 選項 3. 當然可行。只是當 case 和 control 的數量變多後,就變得比較不好處理 而且當 item 數變大後,Excel 反應會比較遲頓 或是其他方案也可以 儘量以 Windows 上也可行的方案為主 先在這裡感謝各位大大看完我的問題 [Update] 後來找了這個... https://github.com/BurntSushi/xsv 用 Rust 寫的 操作難度和 CSVKit 差不多 功能比較簡略一點 好處是可以編譯成單一的執行檔 操作速度也不錯 (有 benchmark 資料) 我只要預先編譯和寫簡易 tutorial 就可以了 對於疑心病重 怕別人放料的 就傳網址叫對方自己去編 www -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 112.105.245.217 ※ 文章網址: https://www.ptt.cc/bbs/Programming/M.1487657033.A.989.html

02/21 14:25, , 1F
自己寫個適合的小工具 based on awk ?
02/21 14:25, 1F

02/21 17:00, , 2F
寫個python小工具?
02/21 17:00, 2F
※ 編輯: Neisseria (112.105.245.217), 02/21/2017 19:38:10

02/23 21:42, , 3F
這個作者超強,還寫了rust的regex跟
02/23 21:42, 3F

02/23 21:42, , 4F
ripgrep
02/23 21:42, 4F
文章代碼(AID): #1OgzX9c9 (Programming)
文章代碼(AID): #1OgzX9c9 (Programming)