tsv、csv、xls等文件類型區(qū)別及如何用python處理詳解
前言
考慮到進行機器學習、深度學習訓練、預測時我們不免接觸到許許多多的數據,而這些數據又以不同的格式存在(主要有csv、xls、tsv三種格式),所以本文就想來講講這三種格式數據的轉化、閱讀、處理
介紹
txt文件:txt為純文本文件,無格式,只保存內容字符,基本跨平臺,不過受字符的編碼影響(因為只保存字符編碼,一般沒特定的編碼識別標志),需要選擇對應字符解碼方式才能正確讀?。ㄈ鏕BK編碼的字符用UTF-8解碼會亂碼)
csv文件:CSV是一種簡單、實用的文件格式,用于存儲和表示包括文本、數值等各種類型的數據。CSV 文件通常以 .csv 作為文件擴展名。這種文件格式的一個顯著特點是:文件內的數據以逗號分隔,呈現一個表格形式。CSV 文件已廣泛應用于存儲、傳輸和編輯數據
tsv文件:TSV也是一種簡單、實用的文件格式,與CSV一樣用于存儲和表示包括文本、數值等各種類型的數據。其顯著特點是文件內的數據以指標符 '\t' 分隔
xls文件:xls是一個特有的二進制格式,核心結構屬于復合型文檔類型,是2003版本Office Microsoft Office Excel工作表保存的默認格式。新建Excel表格保存的后綴名為“.xls”。最普通的excel格式
xlsx文件:xlsx的核心結構是XML類型結構,采用了XML的壓縮方式,使其占用的空間更小,xlsx中最后一個x的意義就在于此,它是Excel2007版本的文件。新建Excel表格默認保存的后綴名為“.xlsx”
xlsm文件:xlsm同xlsx一樣是屬于07年版本的保存文件。只有保存為xlsm文件格式時,才能夠保存寫在excel文件中的宏方法,也就是VBA語言程序。它的后綴名是“.xlsm”
doc文件:是office word的文檔文件,是是二進制文檔,數據結構復雜且保密(微軟私有格式,破解的多只能讀,寫容易出問題,官方word讀不回去)
docx文件:是一種基于xml的zip包,開放格式,基本保證支持docx的都能通用讀寫。
pdf文件:是Adobe推出的文檔交換格式,富文本,主要用于實現文檔交換(如傳閱和打?。?,對文字格式控制(可保證格式原樣不變)和文檔保護比doc好,同跨平臺,屬于開放標準
本文重點來講講標紅的三種文件格式之間的轉化以及文件處理(python語言)
tsv、csv、txt的區(qū)別
- 相同點: csv、tsv和txt都屬于文本文件。
- 不同點:csv和tsv文件的字段間分別由逗號和tab鍵隔開,而txt文件則沒有明確要求,可使用逗號/制表符/空格等 多種不同的符號。
| 文件類型 | 全稱 | 字段間的分隔符 |
|---|---|---|
| csv | Comma-separated values | 半角逗號(’,’) |
| tsv | Tab-separated values | 制表符(Tab,’\t’) |
| txt | Text File | 逗號/制表符/空格等,無固定格式 |
讀取/生成 不同格式數據文件(python)
python中有一個庫專門用來數據處理,這個庫就是pandas。pandas能夠對數據進行歸一化、標準化、缺失值補全、異常值剔除等處理,當然也能夠對不同的格式的數據文件進行讀取、生成、轉化。學會使用pandas庫,將大大方便我的對數據的處理
下圖為pandas庫下不同格式數據文件讀取、生成的函數名稱(來源 官方文檔):

一、讀取/生成csv數據文件
import pandas as pd
data=pd.read_csv('./mydata.csv') #讀取csv格式文件,mydata.csv為文件名
data.to_csv('./my_new_data.csv') #生成csv格式文件,此時data中存儲的是其他文件格式(例如xls)read_csv函數默認的分隔符參數為‘,’,所以這里的read_csv('./mydata.csv')完整寫法為read_csv('./mydata.csv',sep=',')。如果有需要我們也可以修改sep中的分隔符符號,去實現不同分隔符下數據的讀取
read_csv函數讀取后返回對象為DataFrame類型
二、讀取/生成txt數據文件
# 讀取txt文件
import pandas as pd
# 調用read_table函數讀取txt文件
data = pd.read_table("./mydatat.txt")
# 調用read_csv函數讀取txt文件
df = pd.read_csv("./my_new_data.txt",sep=',')
這里利用read_csv函數來讀取txt文件時,這意味著txt文件中數據的分隔符需要是‘,’,否則將無法正確的解析數據
三、讀取/生成tsv數據文件
import pandas as pd
# 讀取TSV文件
data = pd.read_csv('data.tsv', sep='\t')read_csv()函數通常來讀取CSV文件,所以默認情況下,它會將逗號作為分隔符。為了讀取TSV文件,我們需要使用read_csv()函數,并將分隔符參數設置為'\t'
四、讀取/生成xls數據文件
import pandas as pd
#讀取xlsx文件轉化為DataFrame格式存儲在df中
df=pd.read_excel('file.xlsx')
#將DataFrame對象轉化為xlsx文件格式
df.to_excel('new_file.xlsx')這兩個函數同樣可以生成xls文件。xls文件相比于xlsx文件安全系數更好,因為其是用二進制存儲的,而xlsx文件是用xml格式存儲的,xml格式是為了傳輸的
不同文件格式轉化
一個思路:先將待轉化文件格式讀取為DataFrame格式,然后再利用DataFrame格式的to_函數轉成不同格式文件
總結
python中的pandas庫是數據處理的一個利器,如果遇到數據處理的問題都可以利用pandas庫來處理
到此這篇關于tsv、csv、xls等文件類型區(qū)別及如何用python處理的文章就介紹到這了,更多相關python處理tsv、csv、xls文件類型內容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關文章希望大家以后多多支持腳本之家!
相關文章
Dephi逆向工具Dede導出函數名MAP導入到IDA中的實現方法
這篇文章主要介紹了Dephi逆向工具Dede導出函數名MAP導入到IDA中,通過這個腳本,我們就可以把專業(yè)dephi程序分析的結果,轉移到IDA專業(yè)逆向代碼分析的平臺,實現聯動,需要的朋友可以參考下2022-08-08
python pandas.DataFrame.loc函數使用詳解
這篇文章主要介紹了python pandas.DataFrame.loc函數使用詳解,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧2020-03-03

