Pandas DataFrame es una estructura de datos etiquetada bidimensional como cualquier tabla con filas y columnas. El tamaño y los valores de la trama de datos son mutables, es decir, se pueden modificar. Es el objeto pandas más utilizado. Pandas DataFrame se puede crear de varias maneras. Discutamos diferentes formas de crear un DataFrame uno por uno.
La función DataFrame() se utiliza para crear un marco de datos en Pandas. La sintaxis para crear un marco de datos es:
pandas.DataFrame(data, index, columns)
dónde,
datos : es un conjunto de datos a partir del cual se creará un marco de datos. Puede ser lista, diccionario, valor escalar, serie, ndarrays, etc.
índice : es opcional, por defecto, el índice del marco de datos comienza desde 0 y termina en el último valor de datos (n-1). Define la etiqueta de fila explícitamente.
Columnas : este parámetro se utiliza para proporcionar nombres de columna en el marco de datos. Si el nombre de la columna no está definido por defecto, tomará un valor de 0 a n-1.
Método #0: Creando un Marco de Datos Vacío
Python3
# Importing Pandas to create DataFrame import pandas as pd # Creating Empty DataFrame and Storing it in variable df df = pd.DataFrame() # Printing Empty DataFrame print(df)
Producción:
- La función DataFrame() de pandas se usa para crear un marco de datos.
- La variable df es el nombre del marco de datos en nuestro ejemplo.
Método n.º 1: creación de marcos de datos a partir de listas
Python3
# Import pandas library import pandas as pd # initialize list elements data = [10,20,30,40,50,60] # Create the pandas DataFrame with column name is provided explicitly df = pd.DataFrame(data, columns=['Numbers']) # print dataframe. df
Método #2: Creación de Pandas DataFrame a partir de listas de listas.
Python3
# Import pandas library import pandas as pd # initialize list of lists data = [['tom', 10], ['nick', 15], ['juli', 14]] # Create the pandas DataFrame df = pd.DataFrame(data, columns=['Name', 'Age']) # print dataframe. df
Producción:
Método #3: Creación de DataFrame a partir de dict of narray/lists
Para crear DataFrame a partir de dict of narray/list, todo el narray debe tener la misma longitud. Si se pasa el índice, el índice de longitud debe ser igual a la longitud de las arrays. Si no se pasa ningún índice, de forma predeterminada, el índice será rango (n), donde n es la longitud de la array.
Python3
# Python code demonstrate creating # DataFrame from dict narray / lists # By default addresses. import pandas as pd # initialize data of lists. data = {'Name': ['Tom', 'nick', 'krish', 'jack'], 'Age': [20, 21, 19, 18]} # Create DataFrame df = pd.DataFrame(data) # Print the output. df
Producción:
Nota: Al crear un marco de datos usando el diccionario, las claves del diccionario serán el nombre de la columna de forma predeterminada. También podemos proporcionar el nombre de la columna explícitamente usando el parámetro de columna.
Método #4: Crear un DataFrame probando explícitamente la etiqueta de índice.
Python3
# Python code demonstrate creating # pandas DataFrame with indexed by # DataFrame using arrays. import pandas as pd # initialize data of lists. data = {'Name': ['Tom', 'Jack', 'nick', 'juli'], 'marks': [99, 98, 95, 90]} # Creates pandas DataFrame. df = pd.DataFrame(data, index=['rank1', 'rank2', 'rank3', 'rank4']) # print the data df
Producción:
Método n.º 5: crear un marco de datos a partir de una lista de dictados
Pandas DataFrame se puede crear pasando listas de diccionarios como datos de entrada. Por defecto, las claves del diccionario se tomarán como columnas.
Python3
# Python code demonstrate how to create # Pandas DataFrame by lists of dicts. import pandas as pd # Initialize data to lists. data = [{'a': 1, 'b': 2, 'c': 3}, {'a': 10, 'b': 20, 'c': 30}] # Creates DataFrame. df = pd.DataFrame(data) # Print the data df
Producción:
Otro ejemplo para crear pandas DataFrame pasando listas de diccionarios e índices de fila.
Python3
# Python code demonstrate to create # Pandas DataFrame by passing lists of # Dictionaries and row indices. import pandas as pd # Initialize data of lists data = [{'b': 2, 'c': 3}, {'a': 10, 'b': 20, 'c': 30}] # Creates pandas DataFrame by passing # Lists of dictionaries and row index. df = pd.DataFrame(data, index=['first', 'second']) # Print the data df
Producción:
Otro ejemplo para crear pandas DataFrame a partir de listas de diccionarios tanto con índice de fila como con índice de columna.
Python3
# Python code demonstrate to create a # Pandas DataFrame with lists of # dictionaries as well as # row and column indexes. import pandas as pd # Initialize lists data. data = [{'a': 1, 'b': 2}, {'a': 5, 'b': 10, 'c': 20}] # With two column indices, values same # as dictionary keys df1 = pd.DataFrame(data, index=['first', 'second'], columns=['a', 'b']) # With two column indices with # one index with other name df2 = pd.DataFrame(data, index=['first', 'second'], columns=['a', 'b1']) # print for first data frame print(df1, "\n") # Print for second DataFrame. print(df2)
Producción:
Método #6: Creación de DataFrame usando la función zip().
Se pueden fusionar dos listas usando la función list(zip()). Ahora, cree el DataFrame de pandas llamando a la función pd.DataFrame().
Python3
# Python program to demonstrate creating # pandas Datadaframe from lists using zip. import pandas as pd # List1 Name = ['tom', 'krish', 'nick', 'juli'] # List2 Age = [25, 30, 26, 22] # get the list of tuples from two lists. # and merge them by using zip(). list_of_tuples = list(zip(Name, Age)) # Assign data to tuples. list_of_tuples # Converting lists of tuples into # pandas Dataframe. df = pd.DataFrame(list_of_tuples, columns=['Name', 'Age']) # Print data. df
Producción:
Método n. ° 7: creación de marcos de datos a partir de series
Para crear un marco de datos a partir de una serie, debemos pasar la serie como argumento a la función DataFrame().
Python3
# Python code demonstrate creating # Pandas Dataframe from series. import pandas as pd # Initialize data to series. d = pd.Series([10, 20, 30, 40]) # creates Dataframe. df = pd.DataFrame(d) # print the data. df
Método n.º 8: creación de tramas de datos a partir del diccionario de series.
Para crear DataFrame a partir de Dict of series, se puede pasar el diccionario para formar un DataFrame. El índice resultante es la unión de todas las series de pasadas indexadas.
Python3
# Python code demonstrate creating # Pandas Dataframe from Dicts of series. import pandas as pd # Initialize data to Dicts of series. d = {'one': pd.Series([10, 20, 30, 40], index=['a', 'b', 'c', 'd']), 'two': pd.Series([10, 20, 30, 40], index=['a', 'b', 'c', 'd'])} # creates Dataframe. df = pd.DataFrame(d) # print the data. df
Producción: