Membaca Nested JSON sebagai Pandas DataFrame
Untuk membaca fail JSON dengan objek bersarang sebagai panda DataFrame, anda boleh menggunakan json_normalize yang berkuasa fungsi. Fungsi ini membolehkan anda meratakan struktur data bersarang ke dalam format jadual, menjadikannya lebih mudah untuk memanipulasi dan menganalisis data.
Meluaskan Tatasusunan ke dalam Lajur
Sampel anda mengandungi JSON pelbagai lokasi. Daripada mengekalkan tatasusunan ini sebagai lajur JSON, anda boleh mengembangkannya ke lajur yang berasingan untuk mendapatkan cerapan yang lebih baik tentang data. json_normalize boleh mencapai ini dengan parameter meta. Ia menentukan lajur mana yang harus tidak disarangkan dan disertakan sebagai lajur biasa dalam DataFrame.
<code class="python">import json with open('myJson.json') as data_file: data = json.load(data_file) df = pd.json_normalize(data, 'locations', ['date', 'number', 'name'], record_prefix='locations_', meta=['depTime', 'arrTime'])</code>
Kod ini akan mencipta DataFrame dengan lajur tambahan untuk depTime dan arrTime yang diperoleh daripada tatasusunan lokasi.
Menyertai Lajur Lokasi
Anda menyebut bahawa anda mahu menyertai lajur lokasi. Ini boleh dilakukan menggunakan kod berikut:
<code class="python">df['locations'] = df.locations.apply(','.join)</code>
Ini akan menggabungkan lokasi menjadi satu rentetan dipisahkan koma.
Mengendalikan Berbilang Objek JSON
Jika fail JSON anda mengandungi berbilang objek JSON (satu setiap baris), anda boleh menggunakan kod berikut:
<code class="python">import pandas as pd # Read the JSON file into a list of dictionaries with open('myJson.json') as f: data = [json.loads(line) for line in f] # Convert the list of dictionaries to a DataFrame df = pd.DataFrame(data)</code>
Anda kemudian boleh menggunakan teknik yang sama yang diterangkan di atas untuk menormalkan dan menyertai data bersarang.
Dengan memanfaatkan json_normalize, anda boleh membaca, meratakan dan memanipulasi data JSON bersarang dengan cekap ke dalam DataFrame panda, meningkatkan keupayaan analisis data anda.
Atas ialah kandungan terperinci Bagaimana untuk Membaca JSON Bersarang ke dalam Pandas DataFrame dan Memanipulasi Struktur Data?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!