Es importante entender el código de forma correcta previamente a adaptarlo a tu proyecto si tdeseas aportar algo puedes comentarlo.
Solución:
Una forma sería comparando las minúsculas o mayúsculas de la Serie con las mismas de la lista
df[df['column'].str.lower().isin([x.lower() for x in mylist])]
La ventaja aquí es que no estamos guardando ningún cambio en el df original o en la lista, lo que hace que la operación sea más eficiente.
Considere este df ficticio:
Color Val
0 Green 1
1 Green 1
2 Red 2
3 Red 2
4 Blue 3
5 Blue 3
Para la lista l:
l = ['green', 'BLUE']
Puedes usar isin()
df[df['Color'].str.lower().isin([x.lower() for x in l])]
Usted obtiene
Color Val
0 Green 1
1 Green 1
4 Blue 3
5 Blue 3
Prefiero usar el general. .apply
myset = set([s.lower() for s in mylist])
df[df['column'].apply(lambda v: v.lower() in myset)]
Una búsqueda en un set
es más rápido que una búsqueda en un list
Más adelante puedes encontrar las acotaciones de otros creadores, tú incluso puedes dejar el tuyo si te gusta.
¡Haz clic para puntuar esta entrada!
(Votos: 0 Promedio: 0)