Python - JSON Verilerini İşleme
JSON dosyası, verileri insan tarafından okunabilir biçimde metin olarak depolar. JSON, JavaScript Nesne Gösterimi anlamına gelir. Pandalar, JSON dosyalarını okuyabilir.read_json işlevi.
Giriş Verileri
Aşağıdaki verileri not defteri gibi bir metin düzenleyiciye kopyalayarak bir JSON dosyası oluşturun. Dosyayı şununla kaydedin:.json uzantısı ve dosya türünü seçme all files(*.*).
{
"ID":["1","2","3","4","5","6","7","8" ],
"Name":["Rick","Dan","Michelle","Ryan","Gary","Nina","Simon","Guru" ]
"Salary":["623.3","515.2","611","729","843.25","578","632.8","722.5" ],
"StartDate":[ "1/1/2012","9/23/2013","11/15/2014","5/11/2014","3/27/2015","5/21/2013",
"7/30/2013","6/17/2014"],
"Dept":[ "IT","Operations","IT","HR","Finance","IT","Operations","Finance"]
}
JSON Dosyasını Okuyun
read_json pandas kitaplığının işlevi, JSON dosyasını pandas DataFrame'e okumak için kullanılabilir.
import pandas as pd
data = pd.read_json('path/input.json')
print (data)
Yukarıdaki kodu çalıştırdığımızda aşağıdaki sonucu verir.
Dept ID Name Salary StartDate
0 IT 1 Rick 623.30 1/1/2012
1 Operations 2 Dan 515.20 9/23/2013
2 IT 3 Tusar 611.00 11/15/2014
3 HR 4 Ryan 729.00 5/11/2014
4 Finance 5 Gary 843.25 3/27/2015
5 IT 6 Rasmi 578.00 5/21/2013
6 Operations 7 Pranab 632.80 7/30/2013
7 Finance 8 Guru 722.50 6/17/2014
Belirli Sütunları ve Satırları Okuma
CSV dosyasını okumak için önceki bölümde gördüğümüze benzer şekilde, read_jsonPandas kitaplığının işlevi, JSON dosyası bir DataFrame'e okunduktan sonra bazı belirli sütunları ve belirli satırları okumak için de kullanılabilir. Çok eksenli indeksleme yöntemini kullanıyoruz..loc()bu amaç için. Bazı satırlar için Maaş ve Ad sütununu görüntülemeyi seçiyoruz.
import pandas as pd
data = pd.read_json('path/input.xlsx')
# Use the multi-axes indexing funtion
print (data.loc[[1,3,5],['salary','name']])
Yukarıdaki kodu çalıştırdığımızda aşağıdaki sonucu verir.
salary name
1 515.2 Dan
3 729.0 Ryan
5 578.0 Rasmi
JSON dosyasını Kayıt olarak okuma
Ayrıca uygulayabiliriz to_json JSON dosya içeriğini tek tek kayıtlara okumak için parametrelerle birlikte işlev görür.
import pandas as pd
data = pd.read_json('path/input.xlsx')
print(data.to_json(orient='records', lines=True))
Yukarıdaki kodu çalıştırdığımızda aşağıdaki sonucu verir.
{"Dept":"IT","ID":1,"Name":"Rick","Salary":623.3,"StartDate":"1\/1\/2012"}
{"Dept":"Operations","ID":2,"Name":"Dan","Salary":515.2,"StartDate":"9\/23\/2013"}
{"Dept":"IT","ID":3,"Name":"Tusar","Salary":611.0,"StartDate":"11\/15\/2014"}
{"Dept":"HR","ID":4,"Name":"Ryan","Salary":729.0,"StartDate":"5\/11\/2014"}
{"Dept":"Finance","ID":5,"Name":"Gary","Salary":843.25,"StartDate":"3\/27\/2015"}
{"Dept":"IT","ID":6,"Name":"Rasmi","Salary":578.0,"StartDate":"5\/21\/2013"}
{"Dept":"Operations","ID":7,"Name":"Pranab","Salary":632.8,"StartDate":"7\/30\/2013"}
{"Dept":"Finance","ID":8,"Name":"Guru","Salary":722.5,"StartDate":"6\/17\/2014"}