Pandas讀取文件

2022-07-15 11:03 更新

當(dāng)使用 Pandas 做數(shù)據(jù)分析的時(shí),需要讀取事先準(zhǔn)備好的數(shù)據(jù)集,這是做數(shù)據(jù)分析的第一步。Panda 提供了多種讀取數(shù)據(jù)的方法:

  • read_csv() 用于讀取文本文件
  • read_json() 用于讀取 json 文件
  • read_sql_query() 讀取 sql 語(yǔ)句的,

本節(jié)將對(duì)上述方法做詳細(xì)介紹。

CSV文件讀取

CSV 又稱逗號(hào)分隔值文件,是一種簡(jiǎn)單的文件格式,以特定的結(jié)構(gòu)來(lái)排列表格數(shù)據(jù)。 CSV 文件能夠以純文本形式存儲(chǔ)表格數(shù)據(jù),比如電子表格、數(shù)據(jù)庫(kù)文件,并具有數(shù)據(jù)交換的通用格式。CSV 文件會(huì)在 Excel 文件中被打開(kāi),其行和列都定義了標(biāo)準(zhǔn)的數(shù)據(jù)格式。

將 CSV 中的數(shù)據(jù)轉(zhuǎn)換為 DataFrame 對(duì)象是非常便捷的。和一般文件讀寫(xiě)不一樣,它不需要你做打開(kāi)文件、讀取文件、關(guān)閉文件等操作。相反,您只需要一行代碼就可以完成上述所有步驟,并將數(shù)據(jù)存儲(chǔ)在 DataFrame 中。

下面進(jìn)行實(shí)例演示,首先您需要?jiǎng)?chuàng)建一組數(shù)據(jù),并將其保存為 CSV 格式,數(shù)據(jù)如下:

Name,Hire Date,Salary,Leaves Remaining 
John Idle,08/15/14,50000.00,10 
Smith Gilliam,04/07/15,65000.00,6 
Parker Chapman,02/21/14,45000.00,7 
Jones Palin,10/14/13,70000.00,3 
Terry Gilliam,07/22/14,48000.00,9 
Michael Palin,06/28/13,66000.00,8  

注意:將上述數(shù)據(jù)保存到.txt的文本文件中,然后將文件的擴(kuò)展名后綴修改為 csv,即可完成 csv 文件的創(chuàng)建。

接下來(lái),我們使用下列代碼讀寫(xiě)數(shù)據(jù):

import pandas 
#僅僅一行代碼就完成了數(shù)據(jù)讀取,但是注意文件路徑不要寫(xiě)錯(cuò)
df = pandas.read_csv('C:/Users/Administrator/Desktop/hrd.csv') 
print(df)  

輸出結(jié)果:

             Name Hire Date   Salary  Leaves Remaining 
0       John Idle  08/15/14  50000.0                  10
1   Smith Gilliam  04/07/15  65000.0                   6
2  Parker Chapman  02/21/14  45000.0                   7
3     Jones Palin  10/14/13  70000.0                   3
4   Terry Gilliam  07/22/14  48000.0                   9
5   Michael Palin  06/28/13  66000.0                   8

在下一節(jié)會(huì)對(duì) read_csv() 函數(shù)做詳細(xì)講解。

json讀取文件

您可以通過(guò)下列方法來(lái)讀取一個(gè) json 文件,如下所示:

import pandas as pd 
data = pd.read_json('C:/Users/Administrator/Desktop/hrd.json')  
print(data)  

輸出結(jié)果:

             Name Hire Date   Salary  Leaves Remaining 
0       John Idle  08/15/14  50000.0                  10
1   Smith Gilliam  04/07/15  65000.0                   6
2  Parker Chapman  02/21/14  45000.0                   7
3     Jones Palin  10/14/13  70000.0                   3
4   Terry Gilliam  07/22/14  48000.0                   9
5   Michael Palin  06/28/13  66000.0                   8

SQL數(shù)據(jù)庫(kù)讀取

如果想要從 SQL 數(shù)據(jù)庫(kù)讀取數(shù)據(jù),首先您應(yīng)該使用 Python 和數(shù)據(jù)庫(kù)建立連接,然后將查詢語(yǔ)句傳遞給 read_sql_query() 方法,下面做簡(jiǎn)單地演示:

1) 安裝pysqlite3模塊

?pip install pysqlite3?

2) 建立數(shù)據(jù)連接

import sqlite3 
con = sqlite3.connect("database.db")  

3) 數(shù)據(jù)庫(kù)讀取數(shù)據(jù)

在 SQLite 數(shù)據(jù)庫(kù)中創(chuàng)建一張信息表,您可以隨意添加一些信息,最后使用下列方法讀取數(shù)據(jù)即可:

#con參數(shù)指定操作數(shù)據(jù)庫(kù)的引擎,可以指定,也可默認(rèn)
df = pd.read_sql_query("SELECT * FROM information",con)  


以上內(nèi)容是否對(duì)您有幫助:
在線筆記
App下載
App下載

掃描二維碼

下載編程獅App

公眾號(hào)
微信公眾號(hào)

編程獅公眾號(hào)