Bingkai Data Panda. metode from_dict[] memungkinkan Anda mengonversi Dict ke objek DataFrame
Kunci dan Nilai Kamus sebagai baris DataFrame
Kunci dan Nilai Kamus sebagai baris DataFrame
Kunci dan Nilai Kamus sebagai baris DataFrame
Kunci ke Kolom DataFrame dan Nilai ke Baris DataFrame
Kunci ke Kolom DataFrame dan Nilai ke Baris DataFrame
Kunci ke Kolom DataFrame dan Nilai ke Baris DataFrame
Kunci ke Baris DataFrame dan Nilai ke kolom DataFrame
Pandas memiliki fitur keren bernama Peta yang memungkinkan Anda membuat kolom baru dengan memetakan nilai kolom bingkai data dengan Kunci Kamus. Mari kita pahami ini dengan sebuah contoh
Buat Bingkai Data
Mari kita mulai dengan membuat kerangka data dari 5 negara teratas dengan populasinya
import pandas as pd
df= pd.DataFrame[{'Country':['China','India','USA','Indonesia','Brazil'],'Population':[1403500365,1324171354, 322179605,261115456, 207652865]}]
pandas adalah salah satu perpustakaan paling populer di ekosistem Python yang digunakan untuk analisis dan manipulasi data dengan cara yang cepat dan efektif dengan menyediakan API yang intuitif dan kuat yang memungkinkan pengembang berinteraksi dengan data
Salah satu tugas paling umum saat bekerja dengan Python dan panda adalah mengonversi kamus menjadi DataFrame. Ini bisa sangat berguna saat Anda ingin melakukan analisis cepat atau bahkan visualisasi data yang saat ini disimpan dalam struktur data kamus
Pada artikel ini, kita akan mengeksplorasi cara mengonversi kamus Python menjadi DataFrame panda dalam beberapa cara berbeda, bergantung pada bagaimana data disusun dan disimpan pada awalnya di dict
Membuat DataFrame panda dari kamus Python
Sekarang untuk membuat DataFrame panda dari kamus Python kita dapat menggunakan metode
import pandas as pd
users = {
'fist_name': ['John', 'Andrew', 'Maria', 'Helen'],
'last_name': ['Brown', 'Purple', 'White', 'Blue'],
'is_enabled': [True, False, False, True],
'age': [25, 48, 76, 19]
}
df = pd.DataFrame.from_dict[users]
0 yang digunakan untuk membuat DataFrame dari dict objek mirip array atau dictsMari kita buat contoh kamus Python dengan beberapa nilai dummy yang akan kita gunakan di beberapa bagian berikutnya untuk mendemonstrasikan beberapa cara menarik untuk mengubahnya menjadi DataFrame panda
users = {
'fist_name': ['John', 'Andrew', 'Maria', 'Helen'],
'last_name': ['Brown', 'Purple', 'White', 'Blue'],
'is_enabled': [True, False, False, True],
'age': [25, 48, 76, 19]
}
_Sekarang dalam kamus contoh ini, kuncinya sesuai dengan kolom DataFrame, sementara setiap elemen dalam daftar sesuai dengan nilai baris untuk kolom tertentu itu. Oleh karena itu, kita dapat [opsional] menentukan
import pandas as pd
users = {
'fist_name': ['John', 'Andrew', 'Maria', 'Helen'],
'last_name': ['Brown', 'Purple', 'White', 'Blue'],
'is_enabled': [True, False, False, True],
'age': [25, 48, 76, 19]
}
df = pd.DataFrame.from_dict[users]
1 sama dengan import pandas as pd
users = {
'fist_name': ['John', 'Andrew', 'Maria', 'Helen'],
'last_name': ['Brown', 'Purple', 'White', 'Blue'],
'is_enabled': [True, False, False, True],
'age': [25, 48, 76, 19]
}
df = pd.DataFrame.from_dict[users]
2"Orientasi" data. Jika kunci dari dict yang diteruskan harus berupa kolom dari DataFrame yang dihasilkan, berikan 'kolom' [default]
— dokumen panda
import pandas as pd
users = {
'fist_name': ['John', 'Andrew', 'Maria', 'Helen'],
'last_name': ['Brown', 'Purple', 'White', 'Blue'],
'is_enabled': [True, False, False, True],
'age': [25, 48, 76, 19]
}
df = pd.DataFrame.from_dict[users]
_Kami baru saja membuat DataFrame panda menggunakan kamus Python
print[df]
fist_name last_name is_enabled age
0 John Brown True 25
1 Andrew Purple False 48
2 Maria White False 76
3 Helen Blue True 19
Pendekatan ini hanya berlaku setiap kali data Anda dalam kamus disusun sedemikian rupa sehingga setiap kunci sesuai dengan kolom DataFrame. Apa yang terjadi jika kita malah memiliki struktur yang berbeda?
Mengisi kunci kamus sebagai baris
Sekarang anggaplah kita memiliki kamus yang kuncinya sesuai dengan baris DataFrame yang ingin kita buat
users = {
'row_1': ['John', 'Brown', True, 25],
'row_2': ['Andrew', 'Purple', False, 48],
'row_3': ['Maria', 'White', False, 76],
'row_4': ['Helen', 'Blue', True, 19],
}
Dalam skenario ini, kita harus menggunakan opsi
import pandas as pd
users = {
'fist_name': ['John', 'Andrew', 'Maria', 'Helen'],
'last_name': ['Brown', 'Purple', 'White', 'Blue'],
'is_enabled': [True, False, False, True],
'age': [25, 48, 76, 19]
}
df = pd.DataFrame.from_dict[users]
3 seperti yang ditampilkan dalam cuplikan berikut sehingga setiap pasangan nilai kunci dalam kamus kita diuraikan sebagai baris DataFrame. Namun perhatikan, bahwa saat menggunakan import pandas as pd
users = {
'fist_name': ['John', 'Andrew', 'Maria', 'Helen'],
'last_name': ['Brown', 'Purple', 'White', 'Blue'],
'is_enabled': [True, False, False, True],
'age': [25, 48, 76, 19]
}
df = pd.DataFrame.from_dict[users]
_3, kita harus secara eksplisit menentukan nama kolom saat memanggil metode import pandas as pd
users = {
'fist_name': ['John', 'Andrew', 'Maria', 'Helen'],
'last_name': ['Brown', 'Purple', 'White', 'Blue'],
'is_enabled': [True, False, False, True],
'age': [25, 48, 76, 19]
}
df = pd.DataFrame.from_dict[users]
5import pandas as pd
users = {
'row_1': ['John', 'Brown', True, 25],
'row_2': ['Andrew', 'Purple', False, 48],
'row_3': ['Maria', 'White', False, 76],
'row_4': ['Helen', 'Blue', True, 19],
}
cols = ['first_name', 'last_name', 'is_enabled', 'age']
df = pd.DataFrame.from_dict[users, orient='index', columns=cols]
Dan sekali lagi, kami berhasil membuat DataFrame panda dari kamus Python, kali ini dengan mem-parsing setiap pasangan nilai kunci sebagai baris DataFrame
print[df]
first_name last_name is_enabled age
row_1 John Brown True 25
row_2 Andrew Purple False 48
row_3 Maria White False 76
row_4 Helen Blue True 19
Seperti yang mungkin Anda perhatikan, setiap kunci juga menjadi indeks DataFrame yang baru diisi. Jika Anda ingin menghilangkannya, Anda dapat melakukannya dengan menjalankan perintah berikut
df.reset_index[drop=True, inplace=True]
Dan indeks sekarang harus diatur ulang
print[df]
first_name last_name is_enabled age
0 John Brown True 25
1 Andrew Purple False 48
2 Maria White False 76
3 Helen Blue True 19
Opsi orientasi ketat
Pada panda v1. 4. 0, Anda juga dapat menggunakan opsi
import pandas as pd
users = {
'fist_name': ['John', 'Andrew', 'Maria', 'Helen'],
'last_name': ['Brown', 'Purple', 'White', 'Blue'],
'is_enabled': [True, False, False, True],
'age': [25, 48, 76, 19]
}
df = pd.DataFrame.from_dict[users]
_6 saat membuat pandas DataFrames dari kamus Python. Opsi ini mengasumsikan bahwa kamus input memiliki kunci berikut. import pandas as pd
users = {
'fist_name': ['John', 'Andrew', 'Maria', 'Helen'],
'last_name': ['Brown', 'Purple', 'White', 'Blue'],
'is_enabled': [True, False, False, True],
'age': [25, 48, 76, 19]
}
df = pd.DataFrame.from_dict[users]
7, import pandas as pd
users = {
'fist_name': ['John', 'Andrew', 'Maria', 'Helen'],
'last_name': ['Brown', 'Purple', 'White', 'Blue'],
'is_enabled': [True, False, False, True],
'age': [25, 48, 76, 19]
}
df = pd.DataFrame.from_dict[users]
2, import pandas as pd
users = {
'fist_name': ['John', 'Andrew', 'Maria', 'Helen'],
'last_name': ['Brown', 'Purple', 'White', 'Blue'],
'is_enabled': [True, False, False, True],
'age': [25, 48, 76, 19]
}
df = pd.DataFrame.from_dict[users]
9, print[df]
fist_name last_name is_enabled age
0 John Brown True 25
1 Andrew Purple False 48
2 Maria White False 76
3 Helen Blue True 19
0 dan print[df]
fist_name last_name is_enabled age
0 John Brown True 25
1 Andrew Purple False 48
2 Maria White False 76
3 Helen Blue True 19
1Misalnya, kamus berikut cocok dengan persyaratan ini
data = {
'index': [['a', 'b'], ['a', 'c']],
'columns': [['x', 1], ['y', 2]],
'data': [[1, 3], [2, 4]],
'index_names': ['n1', 'n2'],
'column_names': ['z1', 'z2']
}
df = pd.DataFrame.from_dict[data, orient='tight']
print[df]
z1 x y
z2 1 2
n1 n2
a b 1 3
c 2 4
Pendekatan terakhir ini biasanya berguna untuk membangun MultiIndex DataFrames
Pikiran Akhir
Mengubah kamus Python menjadi pandas DataFrame adalah proses yang sederhana dan mudah. Dengan menggunakan metode
print[df]
fist_name last_name is_enabled age
0 John Brown True 25
1 Andrew Purple False 48
2 Maria White False 76
3 Helen Blue True 19
_2 bersama dengan opsi import pandas as pd
users = {
'fist_name': ['John', 'Andrew', 'Maria', 'Helen'],
'last_name': ['Brown', 'Purple', 'White', 'Blue'],
'is_enabled': [True, False, False, True],
'age': [25, 48, 76, 19]
}
df = pd.DataFrame.from_dict[users]
1 yang benar sesuai dengan struktur kamus asli Anda, Anda dapat dengan mudah mengubah data Anda menjadi DataFrame sehingga sekarang Anda dapat melakukan analisis atau transformasi menggunakan API pandaJadilah anggota dan baca setiap cerita di Medium. Biaya keanggotaan Anda secara langsung mendukung saya dan penulis lain yang Anda baca. Anda juga akan mendapatkan akses penuh ke setiap cerita di Medium