CSV大文件的处理(以ngsim数据为例):分割、导入与合并
逗號(hào)分隔值(Comma-Separated Values,CSV,有時(shí)也稱為字符分隔值,因?yàn)榉指糇址部梢圆皇嵌禾?hào)),其文件以純文本形式存儲(chǔ)表格數(shù)據(jù)(數(shù)字和文本)。純文本意味著該文件是一個(gè)字符序列,不含必須像二進(jìn)制數(shù)字那樣被解讀的數(shù)據(jù)。CSV文件由任意數(shù)目的記錄組成,記錄間以某種換行符分隔;每條記錄由字段組成,字段間的分隔符是其它字符或字符串,最常見的是逗號(hào)或制表符。通常,所有記錄都有完全相同的字段序列。通常都是純文本文件[1]。
直接用Excel打開CSV文件有時(shí)候會(huì)出錯(cuò),而且如果CSV文件記錄數(shù)過多(超過Excel最大行數(shù)1,048,576和最大列數(shù)16,384的限制),導(dǎo)入Excel會(huì)出現(xiàn)未完全加載的問題。ngsim數(shù)據(jù)CSV文件大小為1.5G左右,一共11,850,526行。下面以ngsim數(shù)據(jù)為例,介紹我遇到的問題及解決辦法。
問題一:Excel直接打開數(shù)據(jù)行列未分開。如圖1.1所示。
圖1.1?
?
解決辦法:
1. 新建Excel工作表,點(diǎn)擊數(shù)據(jù)、自文本,然后選擇CSV文件導(dǎo)入,如圖1.2。此時(shí)會(huì)彈出文本導(dǎo)入向?qū)?duì)話框,如圖1.3。
圖1.2?
圖1.32. 選中分隔符號(hào),導(dǎo)入起始行設(shè)為1,勾選數(shù)據(jù)包含標(biāo)題,如圖1.4所示。
圖1.4?
?
3. 勾選分隔符號(hào),下面會(huì)有預(yù)覽,如圖1.5。
圖1.5?
?
4. 點(diǎn)擊預(yù)覽中的某一列,可以設(shè)置列數(shù)據(jù)格式,設(shè)置完后點(diǎn)擊完成。如圖1.6.
圖1.6?
?
5. 選擇數(shù)據(jù)的放置位置,然后點(diǎn)擊確定。如圖1.7。
圖1.7?
?
6. 發(fā)現(xiàn)提示無法放入一個(gè)表格中,先點(diǎn)擊確定。如圖1.8行列已分開。
圖1.8?
?
問題二:數(shù)據(jù)超出一個(gè)Excel工作表行數(shù)限制,未完全加載。
解決辦法:CSV分割。
使用CSV分割器,無需安裝,雙擊打開即可。只需選擇需要分割的文件和想要分割的行數(shù),即可一鍵分割。如圖1.9.
圖1.9?
?
分割完后,再按照問題一的解決方法將CSV文件導(dǎo)入Excel表格,然后用Excel表格對(duì)數(shù)據(jù)進(jìn)行必要的處理。
CSV分割器下載鏈接:https://download.csdn.net/download/qq_43080446/12034382
問題三:如何確定CSV文件有多少行?由于CSV文件行數(shù)過多時(shí),Excel表格不能完全顯示。
解決辦法:
1. 使用Visual Studio打開,可以看到CSV文件的總行數(shù)。
2. 使用Matlab導(dǎo)入數(shù)據(jù),如圖2.0。可能會(huì)卡頓,不太建議。
圖2.0?
?
3. 其他文本處理軟件,如notepad++等。
問題四:如何快速合并多個(gè)CSV文件為一個(gè)?
解決辦法:
1. 快捷鍵win+R調(diào)出運(yùn)行窗口,輸入cmd調(diào)出命令窗口。
2. 輸入cd /d 多個(gè) CSV文件所在的文件夾路徑[2]。如圖2.1.
圖2.1?
?
3. 輸入copy *.csv all.csv ,即可將所有的csv文件復(fù)制到一個(gè)文件里邊[3]。如圖2.2.
圖2.2?
4. 也可以參考https://blog.csdn.net/weixin_39664337/article/details/99679656的方法。
參考文獻(xiàn)
?
總結(jié)
以上是生活随笔為你收集整理的CSV大文件的处理(以ngsim数据为例):分割、导入与合并的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Matlab xlim ylim zli
- 下一篇: RTK、IMU、RT3000