Python 사전을 Pandas DataFrame으로 변환하는 방법
Asad Riaz
2023년1월30일
2020년6월16일
Pandas
Pandas DataFrame
-
사전
을 PandasDataFame
로 변환하는 방법 - ‘키’를 ‘열’로 변환하고 ‘값’을 Pandas ‘데이터 프레임’의 ‘행’값으로 변환하는 방법
-
dict
를DataFrame
으로 변환하는pandas.DataFrame().from_dict()
메소드

파이썬 ‘사전’을 Pandas datafarme
로 변환하는 방법과 ‘키’를 ‘열’로, ‘값’을 ‘행’값으로 설정하는 옵션을 소개합니다. 중첩 된 ‘사전’을 ‘데이터 프레임’으로 변환 할 수도 있습니다.
우리는pandas.DataFrame.from_dict
를 사용하는 또 다른 접근법을 소개 할 것이고, 인덱스와 컬럼의 이름을 한 번에 설정하기 위해 이것을rename
메소드와 연결시킬 것입니다.
사전
을 Pandas DataFame
로 변환하는 방법
Pandas의 DataFrame 생성자pd.DataFrame()
은 사전의 ‘항목’이 생성자의 인수로 제공되지만 사전 자체는 아닌 경우 사전을 DataFrame
으로 변환합니다.
# python 3.x
import pandas as pd
fruit_dict = {
3: 'apple',
2: 'banana',
6:'mango',
4:'apricot',
1:'kiwi',
8:'orange'}
print(pd.DataFrame(list(fruit_dict.items()),
columns=['Quantity', 'FruitName']))
사전의 ‘키’와 ‘값’은 ‘열’옵션에 지정된대로 열 이름을 사용하여 ‘데이터 프레임’의 두 열로 변환됩니다.
Quantity FruitName
0 3 apple
1 2 banana
2 6 mango
3 4 apricot
4 1 kiwi
5 8 orange
‘키’를 ‘열’로 변환하고 ‘값’을 Pandas ‘데이터 프레임’의 ‘행’값으로 변환하는 방법
사전을 괄호로 묶고 위 코드에서 열 이름을 다음과 같이 제거하면됩니다.
import pandas as pd
fruit_dict = {
1: 'apple',
2: 'banana',
3:'mango',
4:'apricot',
5:'kiwi',
6:'orange'}
print(pd.DataFrame([fruit_dict]))
출력:
1 2 3 4 5 6
0 apple banana mango apricot kiwi orange
Pandas 사전 이해
와concat
을 사용하여 모든사전
을 결합한 다음 목록을 전달하여 새로운열
이름을 부여합니다.
다음 코드를 고려하십시오.
import pandas as pd
data = {
'1':{
'apple':11,
'banana':18},
'2':{
'apple':16,
'banana':12}
}
df = pd.concat({k: pd.Series(v) for k, v in data.items()}).reset_index()
df.columns = ['dict_index', 'name','quantity']
print(df)
출력:
dict_index name quantity
0 1 apple 11
1 1 banana 18
2 2 apple 16
3 2 banana 12
dict
를DataFrame
으로 변환하는pandas.DataFrame().from_dict()
메소드
from_dict
를 사용하여dict
를 DataFrame
으로 변환합니다. 여기서 사전 키를 행으로 사용하고rename()
메소드를 적용하여 열 이름을 변경하기 위해orient='index'
를 설정합니다.
다음 코드를 고려하십시오.
import pandas as pd
print(pd.DataFrame.from_dict({
'apple': 3,
'banana': 5,
'mango': 7,
'apricot': 1,
'kiwi': 8,
'orange': 3}, orient='index').rename(columns={0:'Qunatity'}))
출력:
Quantity
apple 3
banana 5
mango 7
apricot 1
kiwi 8
orange 3