Cómo convertir el diccionario Python en Pandas DataFrame
-
Método para convertir el
diccionario
en PandasDataFrame
-
Método para convertir las
claves
en lascolumns
y losvalores
en lasfilas
del PandasDataFrame
-
pandas.DataFrame().from_dict()
método para convertir eldict
enDataFrame
Introduciremos el método para convertir el diccionario
de Python en el datafarme
de Pandas, y opciones como tener values
para las columns
y values
para los valores de las filas
. También podríamos convertir el diccionario
anidado en un DataFrame
.
También introduciremos otra aproximación usando pandas.DataFrame.from_dict
, y lo encadenaremos con cualquier método de rename
para establecer los nombres del índice y las columnas de una sola vez.
Método para convertir el diccionario
en Pandas DataFrame
Pandas DataFrame
constructor pd.DataFrame()
convierte el diccionario en DataFrame
si los elementos
del diccionario se dan como argumento del constructor, pero no el diccionario en sí.
# 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"]))
Las claves
y los valores
del diccionario se convierten en dos columnas del DataFrame
con los nombres de las columnas como se indica en las opciones columns
.
Quantity FruitName
0 3 apple
1 2 banana
2 6 mango
3 4 apricot
4 1 kiwi
5 8 orange
Método para convertir las claves
en las columns
y los valores
en las filas
del Pandas DataFrame
Podemos simplemente poner corchetes alrededor del diccionario y quitar el nombre de la columna del código anterior de esta manera:
import pandas as pd
fruit_dict = {1: "apple", 2: "banana", 3: "mango", 4: "apricot", 5: "kiwi", 6: "orange"}
print(pd.DataFrame([fruit_dict]))
Producción :
1 2 3 4 5 6
0 apple banana mango apricot kiwi orange
Usaremos pandas comprensión de diccionario
con concat
para combinar todos los diccionarios
y luego pasaremos la lista para dar nuevos nombres de columna
.
Considere el siguiente código,
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)
Producción :
dict_index name quantity
0 1 apple 11
1 1 banana 18
2 2 apple 16
3 2 banana 12
pandas.DataFrame().from_dict()
método para convertir el dict
en DataFrame
Usaremos from_dict
para convertir dict
en DataFrame
, aquí establecemos orient='index'
para usar las claves del diccionario como filas y aplicar el método rename()
para cambiar el nombre de la columna.
Considere el siguiente código,
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"})
)
Producción :
Quantity
apple 3
banana 5
mango 7
apricot 1
kiwi 8
orange 3
Artículo relacionado - Pandas DataFrame
- Cómo obtener las cabeceras de columna de Pandas DataFrame como una lista
- Cómo borrar la columna de Pandas DataFrame
- Cómo convertir la columna del DataFrame a Datetime en Pandas
- Cómo convertir un float en un entero en Pandas DataFrame
- Cómo clasificar Pandas DataFrame por los valores de una columna
- Cómo obtener el agregado de Pandas grupo por y suma