Ravindra Bagale · Data Scienceसर्व coursesया course चे lessonsशोधाEnglish

Data Science · मराठी आवृत्ती

26.3 JSON ते DataFrame

By Ravindra Bagale

या course चे सर्व chapters (py + ch)

हे का शिकायचं?

List-of-dicts सरळ DataFrame होते. Nested dict ना pd.json_normalize.

हे काय आहे?

pd.DataFrame(list) किंवा json_normalize(records).

कसं करायचं?

Step 1. Payload type पाहा (list/dict).

Step 2. DataFrame किंवा normalize.

Step 3. columns ठरवा.

Step 4. dtypes ठीक करा.

उदाहरणं: copy करा आणि चालवा

उदाहरण A — List under orders.

import json
from pathlib import Path
import pandas as pd

payload = json.loads(Path("data/raw/status_sample.json").read_text(encoding="utf-8"))
df = pd.json_normalize(payload["orders"])
print(df.shape)
print(df)

उदाहरण B — Nested customer dict.

import pandas as pd

records = [
    {"order_id": "BLK-10", "amount_inr": 120, "customer": {"name": "Ruhi Bagale", "city": "Pune"}},
    {"order_id": "BLK-11", "amount_inr": 90, "customer": {"name": "Amir", "city": "Nashik"}},
]
df = pd.json_normalize(records)
print(df.columns.tolist())
print(df)

उदाहरण C — read_json records file.

from pathlib import Path
import pandas as pd

Path("data/raw/orders_records.json").write_text(
    '[{"order_id":"BLK-20","city":"Solapur","amount_inr":70},'
    '{"order_id":"BLK-21","city":"Nagpur","amount_inr":150}]',
    encoding="utf-8",
)
df = pd.read_json("data/raw/orders_records.json")
print(df)