Rumah >pembangunan bahagian belakang >Tutorial Python >Bagaimanakah Saya Boleh Mencipta Pandas DataFrame dengan Indeks Hierarki daripada Kamus Bersarang?

Bagaimanakah Saya Boleh Mencipta Pandas DataFrame dengan Indeks Hierarki daripada Kamus Bersarang?

Susan Sarandon
Susan Sarandonasal
2024-12-02 18:52:12261semak imbas

How Can I Create a Pandas DataFrame with a Hierarchical Index from a Nested Dictionary?

Membina DataFrame panda daripada Kamus Bersarang dengan Indeks Hierarki

Artikel ini menangani keperluan untuk menukar kamus bersarang menjadi DataFrame panda dengan indeks hierarki. Kamus, berstruktur dengan UserIds sebagai tahap pertama, Kategori sebagai tahap kedua dan pelbagai atribut sebagai tahap ketiga, menimbulkan cabaran dalam mencipta struktur DataFrame yang diingini.

Untuk membina DataFrame dengan indeks hierarki yang dimaksudkan. , penyelesaian pertama melibatkan pembentukan semula kamus bersarang. Setiap kunci dalam kamus hendaklah berupa tuple yang sepadan dengan nilai indeks berbilang. Menggunakan pd.DataFrame.from_dict dan menetapkan orient='index', DataFrame boleh dibuat:

user_dict = {12: {'Category 1': {'att_1': 1, 'att_2': 'whatever'},
                  'Category 2': {'att_1': 23, 'att_2': 'another'}},
             15: {'Category 1': {'att_1': 10, 'att_2': 'foo'},
                  'Category 2': {'att_1': 30, 'att_2': 'bar'}}}

pd.DataFrame.from_dict({(i,j): user_dict[i][j] 
                           for i in user_dict.keys() 
                           for j in user_dict[i].keys()},
                       orient='index')

Pendekatan alternatif melibatkan membina DataFrame dengan menggabungkan bingkai data komponen. Kaedah ini menambahkan DataFrame untuk setiap UserId seperti berikut:

user_ids = []
frames = []

for user_id, d in user_dict.iteritems():
    user_ids.append(user_id)
    frames.append(pd.DataFrame.from_dict(d, orient='index'))

pd.concat(frames, keys=user_ids)

Dengan melaksanakan salah satu kaedah ini, DataFrame panda dengan indeks hierarki boleh dibina daripada kamus bersarang, memudahkan organisasi dan analisis data .

Atas ialah kandungan terperinci Bagaimanakah Saya Boleh Mencipta Pandas DataFrame dengan Indeks Hierarki daripada Kamus Bersarang?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn