Contenido del Curso
Primeros Pasos con Pandas
Primeros Pasos con Pandas
Agregar una Nueva Columna
Hemos aprendido cómo crear un DataFrame
. Ahora exploremos qué podemos hacer con él. Primero, crearemos un DataFrame
compacto que consta de 3 columnas y 7 filas.
import pandas as pd countries_data = {'country' : ['Thailand', 'Philippines', 'Monaco', 'Malta', 'Sweden', 'Paraguay', 'Latvia'], 'continent' : ['Asia', 'Asia', 'Europe', 'Europe', 'Europe', 'South America', 'Europe'], 'capital':['Bangkok', 'Manila', 'Monaco', 'Valletta', 'Stockholm', 'Asuncion', 'Riga']} countries = pd.DataFrame(countries_data) print(countries)
Puedes expandir el DataFrame agregando nuevas columnas, y la forma más común de hacerlo es la siguiente:
-
dataframe
es el nombre de nuestro DataFrame existente al que agregaremos nuevas columnas; -
name_of_new_column
es el nombre que le estás dando a la nueva columna que estás agregando; -
value_1, value_2, value_3
son los valores que poblarán la nueva columna.
Nota
El nombre de la nueva columna debe estar entre comillas y entre corchetes, como
['NewColumnName']
. Los valores asignados a la nueva columna también deben estar dentro de corchetes, por ejemplo,data['NewColumnName'] = [value1, value2, value3]
. Si los valores son numéricos, pueden escribirse sin comillas, como[1, 2, 3]
. Si los valores son cadenas, cada uno debe estar entre comillas, como['A', 'B', 'C']
.
Ahora, añadiremos una columna 'population'
a nuestro DataFrame countries
preexistente.
import pandas as pd countries_data = {'country' : ['Thailand', 'Philippines', 'Monaco', 'Malta', 'Sweden', 'Paraguay', 'Latvia'], 'continent' : ['Asia', 'Asia', 'Europe', 'Europe', 'Europe', 'South America', 'Europe'], 'capital':['Bangkok', 'Manila', 'Monaco', 'Valletta', 'Stockholm', 'Asuncion', 'Riga']} countries = pd.DataFrame(countries_data) countries['population'] = [61399000, 75967000, 39244, 380200, 10380491, 5496000, 2424200] print(countries)
También puedes usar la notación de punto (por ejemplo, df.column
) para acceder a columnas existentes, pero no se puede usar para crear nuevas columnas. Siempre usa corchetes (por ejemplo, df['column']
) para este propósito.
import pandas as pd countries_data = {'country' : ['Thailand', 'Philippines', 'Monaco', 'Malta', 'Sweden', 'Paraguay', 'Latvia'], 'continent' : ['Asia', 'Asia', 'Europe', 'Europe', 'Europe', 'South America', 'Europe'], 'capital':['Bangkok', 'Manila', 'Monaco', 'Valletta', 'Stockholm', 'Asuncion', 'Riga']} countries = pd.DataFrame(countries_data) countries.population = [61399000, 75967000, 39244, 380200, 10380491, 5496000, 2424200] print(countries)
Como se esperaba, la columna 'population'
no fue creada ya que Pandas no permite que las columnas se creen usando este enfoque.
¡Gracias por tus comentarios!