讀Json文件生成pandas數(shù)據(jù)框詳情_第1頁
讀Json文件生成pandas數(shù)據(jù)框詳情_第2頁
讀Json文件生成pandas數(shù)據(jù)框詳情_第3頁
讀Json文件生成pandas數(shù)據(jù)框詳情_第4頁
讀Json文件生成pandas數(shù)據(jù)框詳情_第5頁
已閱讀5頁,還剩1頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)

文檔簡介

第讀Json文件生成pandas數(shù)據(jù)框詳情目錄前言records格式index格式columns類型values格式split參數(shù)示例壓縮與編碼

前言

本文講解如何加載json文件或字符串為pandas數(shù)據(jù)框。pandas把json數(shù)據(jù)分成幾種典型類型,希望對你實際數(shù)據(jù)應(yīng)用開發(fā)有所啟示。

有時可能需要轉(zhuǎn)換json文件位pandas數(shù)據(jù)框。使用pandas內(nèi)置的read_json()函數(shù)很容易實現(xiàn),

其語法如下:

read_json(path,orient=index)

path:json文件的路徑orient:json文件的格式描述,缺省是index,還有其他選型:split,records,columns,values。

下面通過幾個示例進行說明。

records格式

假設(shè)json文件my_file.json的格式如下:

[

"points":25,

"assists":5

"points":12,

"assists":7

"points":15,

"assists":7

"points":19,

"assists":12

]

我們使用pandas的函數(shù)read_json,只要只從orient參數(shù)位records:

#加載json文件,生成pandas數(shù)據(jù)框

df=pd.read_json('data/json_file.json',orient='records')

#查看數(shù)據(jù)框

print(df)

輸出結(jié)果:

pointsassists

0255

1127

2157

31912

index格式

假設(shè)json文件格式為:

{

"0":{

"points":25,

"assists":5

"1":{

"points":12,

"assists":7

"2":{

"points":15,

"assists":7

"3":{

"points":19,

"assists":12

}

與上面實現(xiàn)代碼一樣,僅需要修改orient=index:

importpandasaspd

df=pd.read_json("data/my_file.json",orient='index')

print(df)

輸出結(jié)果:

pointsassists

0255

1127

2157

31912

columns類型

假設(shè)json文件格式為:

{

"points":{

"0":25,

"1":12,

"2":15,

"3":19

"assists":{

"0":5,

"1":7,

"2":7,

"3":12

}

加載代碼修改orient參數(shù)為columns:

importpandasaspd

df=pd.read_json("data/my_file.json",orient='columns')

print(df)

結(jié)果與上面一致。

values格式

假設(shè)json文件代碼如下:

[

]

加載代碼如下:

importpandasaspd

df=pd.read_json("data/my_file.json",orient='values')

print(df)

輸出結(jié)果:

01

0255

1127

2157

31912

split參數(shù)示例

下面看split參數(shù)示例:

importpandasaspd

#示例數(shù)據(jù)

data='{"columns":["col1","col2"],"index":["row1","row2"],"data":[["a","b"],["c","d"]]}'

df=pd.read_json(data,orient='split')

print(df)

輸出交叉表形式結(jié)果:

col1col2

row1ab

row2cd

如果不指定index,則行自動生成序號:

importpandasaspd

data='{"columns":["col1","col2"],"data":[["a","b"],["c","d"]]}'

df=pd.read_json(data,orient='split')

print(df)

輸出結(jié)果:

col1col2

0ab

1cd

壓縮與編碼

使用compression參數(shù)可以解壓并載入json文件,參數(shù)選型有:zip,gzip,bz2,zstd。如果指定zip,則確保文件為zip文件格式,None表示不解壓。

使用encoding指定自定義編碼,缺省為UTF-8編碼。

假設(shè)my_file.zip壓縮文件格

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論