Как преобразовать словарь Python в Pandas DataFrame
-
Метод преобразования
отрицательного
в PandasDataFame
-
Метод преобразования
ключей
встолбцы
изначений
встроки
значения в PandasDataFrame
-
pandas.DataFrame().from_dict()
метод для преобразованияdict
вdataframe
Мы познакомим вас с методом преобразования Pythonского отрицательного
словаря в Pandas datafarme
, а также с такими опциями, как наличие ключей
в качестве столбцов
и значений
в качестве страниц
и преобразование вложенного отрицательного
словаря в DataFrame
.
Мы также внедрим другой подход, используя pandas.DataFrame.from_dict
, мы свяжем это с любым методом переименования
, а также зададим имена индексов и столбцов одним махом.
Метод преобразования отрицательного
в 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']))
Клавиши
и значения
словаря преобразуются в две колонки DataFrame
с именами столбцов, как указано в опциях столбцы
.
Quantity FruitName
0 3 apple
1 2 banana
2 6 mango
3 4 apricot
4 1 kiwi
5 8 orange
Метод преобразования ключей
в столбцы
и значений
в строки
значения в Pandas DataFrame
Мы можем просто заключить словарь в скобки и удалить название столбца из приведенного выше кода вот так:
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
Мы используем панды понимания противоречий
с 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
pandas.DataFrame().from_dict()
метод для преобразования dict
в dataframe
Мы будем использовать from_dict
для преобразования dict
в dataframe
, здесь мы устанавливаем orient='index'
для использования ключей словаря в качестве строк и применяем метод raname()
для изменения имени столбца.
Рассмотрим следующий код,
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