Aquí dejo un pequeño aporte, me dio curiosidad por cómo podría filtrarse una columa de texto. Comparto la solución.
Librerías de manipulación de datos con Python
¿Por qué NumPy y Pandas?
NumPy
NumPy Array
Tipos de datos
Dimensiones
Creando arrays
Shape y Reshape
Funciones principales de NumPy
Copy
Condiciones
Operaciones
Quiz: NumPy
Pandas
Series y DataFrames en Pandas
Leer archivos CSV y JSON con Pandas
Filtrado con loc y iloc
Agregar o eliminar datos con Pandas
Manejo de datos nulos
Filtrado por condiciones
Funciones principales de Pandas
groupby
Combinando DataFrames
Merge y Concat
Join
Pivot y Melt
Apply
Quiz: Pandas
Cierre
Posibilidades con Pandas y NumPy
No tienes acceso a esta clase
¡Continúa aprendiendo! Únete y comienza a potenciar tu carrera
Funciona por lógica booleana y retorna los valores que están en “True”. Es muy útil porque en ocasiones queremos filtrar o separar datos.
df_books = pd.read_csv('bestsellers-with-categories.csv')
df_books.head(2) ---> #muestra los primeros dos registros del dataFrame
mayor2016 = df_books['Year'] > 2016
mayor2016
---> #muestra el dataFrame con valores booleanos. True para libros publicados desde el 2017
df_books[mayor2016]
---> #filtra los datos que cumplen con la condicion
df_books[df_books['Year'] > 2016]
---> #filtra los datos que cumplen con la condicion
genreFiction = df_books['Genre'] == 'Fiction'
genreFiction ---> #muestra el dataFrame con valores booleanos. True para libros de tipo Fiction
df_books[genreFiction & mayor2016]
---> #Filtra los libros que sean de tipo Fiction y que hayan sido publicado desde 2017
df_books[~mayor2016]
---> #Filtra los libros publicados antes o igual al 2016
Contribución creada por: Edward Giraldo.
Aportes 19
Preguntas 1
Aquí dejo un pequeño aporte, me dio curiosidad por cómo podría filtrarse una columa de texto. Comparto la solución.
Wow Carlos esto es muy util, te felicito por el curso va todo excelente hasta el momento, explicas con casos practicos y muy buen contenido, puedo ver muchas veces tus clases y aportan mucho
Si queremos colocar varias condiciones sin expresarla anteriormente, debemos colocarlas separadas en paréntesis:
df_books[(df_books['Year'] > 2016) & (df_books['Genre'] == 'Fiction')]
Llamamos los datos de un archivo csv para manejarlos
import pandas as pd
df_books = pd.read_csv('bestsellers-with-categories.csv', sep=',', header=0)
df_books.head(2) ---> #muestra los primeros dos registros del dataFrame
mayor2016 = df_books['Year'] > 2016
mayor2016
---> #muestra el dataFrame con valores booleanos. True para libros publicados desde el 2017
df_books[mayor2016]
---> #filtra los datos que cumplen con la condicion
df_books[df_books['Year'] > 2016]
---> #filtra los datos que cumplen con la condicion
genreFiction = df_books['Genre'] == 'Fiction'
genreFiction ---> #muestra el dataFrame con valores booleanos. True para libros de tipo Fiction
df_books[genreFiction & mayor2016]
---> #Filtra aquellos libros que sean de tipo Fiction y que hayan sido publicado desde 2017
df_books[~mayor2016]
---> #Filtra aquellos libros publicado antes de 2017
Lo del filtrado negativo me parece super útil, llevo 1 año en Pandas y NO lo conocía, super práctico este curso
Excelente curso de momento de mis favoritos en el Data Science
Estoy empezando a pensar que NumPy y Pandas son Excel con ESTEROIDES
Excelente clase, el profe sabe como darse a entender y fue de mucha importancia este tema
Muy buena clase. Justamente hoy tenía la duda de como negar una condición.
También se puede generar un filtrado del dataframe según las etiquetas de los INDEX por medio del método FILTER.
Cuando los INDEX son palabras: el método FILTER nos permite filtrar según un grupo de caracteres que contiene la palabra INDEX (argumento LIKE) ó usar expresiones regulares.
FUENTE: https://pandas.pydata.org/docs/reference/api/pandas.DataFrame.filter.html
También pueden usar esta funcionalidad
Tener muy claro lo que hay que filtrar para una buena limpieza de datos
Al igual que los demás compañeros, felicitar muchísimo al profesor.
Gran curso sin duda alguna, he aprendido mucho, paso por paso y de forma clara.
El colocar ~ (virgulilla) antes de el nombre asignado a una variable con una condicional alojada es super útil.
Ejemplo probado y que comparto para que lo prueben es:
year_2010 = df_books[ ‘Year’ ] == 2010
author = df_books[ ‘Author’ ] == 'Stephen King’
df_books[ year_2010 & ~author ]
La salida será el año 2010 de todos los autores que no corresponden a Stephen King 😊
La “vírgula” sale con ALT + 126 ~~~~
Paso la data para que no se pasen dos horas googleando 😉
Si tienen algún problema al momento de filtrar , pueden cambiar el tipo de dato de las columnas de esta manera:
types = {'user_rating':'float','reviews':'float','price':'int', 'year':'int'}
df_best = df_best.astype(types)
Genial esta clase! Super útil!!
👇🏻 Para pasar de los datos booleanos podríamos concatenar 2 filtros y nos genera una tabla ya filtrada
–
⚠ ➡ Si quieren filtrar por negaciones no se usa != 😃 se usa ’ ~ ’
Mi ejemplo
Los aportes, preguntas y respuestas son vitales para aprender en comunidad. Regístrate o inicia sesión para participar.