Pandas:外部文件數據導入/ 讀取 (如 :csv、txt、tsv、dat、excel文件)、文件存儲(to_csv、to_excel)


 一、文本文件讀取

文本文件是一種由若干行字符構成的計算機文件,它是一種典型的順序文件。

csv是一種逗號分隔的文件格式,因為其分隔符不一定是逗號,又被稱為字符分隔文件,文件以純文本形式存儲表格數據(數字和文本)。

1、使用read_table來讀取文本文件:
格式:pandas.read_table(數據文件名, sep=’\t’, header=’infer’, names=None,index_col=None, dtype=None, engine=None, nrows=None)
sep=’\t’:表示文件的是以制表符\t為分隔(即用Tab鍵來分隔)

 

2、使用read_csv函數來讀取csv、tsv、txt文件:

格式:pandas.read_csv(數據文件名, sep=’,’, header=’infer’, names=None, index_col=None,dtype=None, engine=None, nrows=None)

3、read_table和read_csv常用參數及其說明:

 

補充理解:

(1)read_table和read_csv函數中的sep參數是指定文本的分隔符的,如果分隔符指定錯誤,在讀取數據的時候,每一行數據將連成一片。
(2)header參數是用來指定列名的,如果是None則會添加一個默認的列名。
(3)encoding代表文件的編碼格式,常用的編碼有utf-8、utf-16、gbk、gb2312、gb18030等。如果編碼指定錯誤數據將無法讀取,IPython解釋器會報解析錯誤。

 代碼:

import pandas as pd

print("----------用pd.read_table()獲取dat文件數據----------")
# 獲取外部電影txt文件數據
users = pd.read_table('users.dat',
                      header=None,                    # 表示不要導入原文件內的表頭
                      names=['UserID','Gender','Age','Occupation','Zip-code'],   #自定義列名
                      sep='::',                     # 原文件的分隔符是'::',此處是按此分隔符將數據導入
                      engine= 'python')
print(users.head())

print("------用pd.read_csv()獲取csv、tsv、txt文件數據--------")
print("------案例1-------")
csv=pd.read_csv('iris.csv',
                header=None,                               # 表示不要導入原文件內的表頭
                names=['width','height','category'])    #自定義列名:width,height,category
print(csv.head())
csv.iloc[0,2]=1

csv.to_csv('iris233333.csv')   # 將數據保存為csv格式,並存放在本地

print("------案例2--------")
students1 = pd.read_csv('Students.csv', index_col='ID')   # index_col表示設置原csv文件里的ID列的值作為index索引值(index默認從0開始序列)
students2 = pd.read_csv('Students.tsv', sep='\t', index_col='ID')
students3 = pd.read_csv('Students.txt', sep='|', index_col='ID')

print(students1.head())
print(students2.head())
print(students3.head())

 

結果圖:

 

 

二、Excel文件讀取

1、pandas提供了read_excel函數來讀取“xls”“xlsx”兩種Excel文件:
2、格式:pandas.read_excel(文件名, sheetname=0, header=0, index_col=None, names=None, dtype=None)

3、read_excel常用參數及其說明:

 

 代碼:

print("-------------pd.read_excel()獲取excel文件-------------")
import pandas as pd
#獲取excel表格文件
excel=pd.read_excel('data.xlsx')
print(excel)

結果圖:

 

三、文本文件存儲

1、文本文件的存儲和讀取類似,結構化數據可以通過pandas中的to_csv函數實現以csv文件格式存儲文件。

2、格式:DataFrame.to_csv(path_or_buf=None, sep=’,’, na_rep=”, columns=None, header=True,index=True,index_label=None,mode=’w’,encoding=None)

3、常用參數及其說明:

 

 四、Excel文件儲存

1、將文件存儲為Excel文件,可以使用to_excel方法。

2、格式:DataFrame.to_excel(excel_writer=None, sheetname=None'’, na_rep=”, header=True,index=True, index_label=None, mode=’w’, encoding=None)

3、.to_excel和 to_csv方法的常用參數基本一致,區別之處在於指定存儲文件的文件路徑參數名稱為excel_writer,並且沒有sep參數,增加了一個sheetnames參數用來指定存儲的Excel sheet的名稱,默認為sheet1。

 

 

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM