[其他] 讀取含有逗號等標點符號的CSV檔

作者: HenryLin123 (HenryLin123)   2017-06-12 23:09:55
我有一個.CSV檔格式如下
id tags text
0 ABC DEF ghj,dd.
1 OKG RRF dd!xx?aa, bb cd.
如果我想要把text裡面的標點符號全部刪掉,然後一個一個單字讀取的話該呼叫何種函數?
或著我先開excel把標點符號都先去掉嗎?
另外想問如果每行數量不一的話,函數要怎麼打,目前我查到用textread,但是不確定該怎麼用才對。
感謝各位了。
作者: sppmg (sppmg)   2017-06-13 03:22:00
mat2cell(s,1,diff([0,find(s==','),numel(s)]))很無聊的試了一下,s是逗點分隔字串,輸出為cell陣列
作者: HenryLin123 (HenryLin123)   2017-06-13 19:12:00
感謝 我等等試試看
作者: sppmg (sppmg)   2017-06-13 21:50:00
類似功能的還有split, strsplit ,不過要注意一下支援的版本。find也可以改用regexp做更靈活的搜尋
作者: Yugaa (對酒當歌人生幾何)   2017-06-15 00:50:00
樓主加油~
作者: chocopie (好吃的巧克力派 :))   2017-06-15 23:07:00
行數數量不一可google countlines.pl,但你的狀況比較像是欄數數量不一。這我就不知道怎麼解了,一般都是想辦法在ETL階段先把資料弄整齊。

Links booklink

Contact Us: admin [ a t ] ucptt.com