[Python-es] [Consulta] lista .index()

Lemarchand Barker lemarchand8679 en gmail.com
Lun Ago 3 19:41:17 EDT 2020


Hice un leve intento de usar DataFrame, me costó un poco pero supongo que
debo sentarme y practicar más el tema de pandas.
Voy a probar lo que me dijiste.
Dejo link dónde está el csv: gavade.csv
<https://www.4shared.com/file/2-ZFJqmVea/gavade.html>
Muchas gracias


El lun., 3 ago. 2020 a las 20:13, David Suárez vía Python-es (<
python-es en python.org>) escribió:

> Hola,
>
> para ayudarte sería útil que nos compartieras al menos un fragmento de la
> tabla, pero de entrada pienso que podrías jugar un poco con el argumento
> *index_col* de read_csv y que en lugar de crear una lista con los nombres
> de los laboratorios uses directamente el DataFrame de pandas para obtener
> los datos.
>
> Es difícil sin conocer la estructura de tus datos, pero algo así como el
> siguiente código podría serte útil:
> >>> posiciones = leer.Laboratorio == "Alcon" #Esto te devuelve un vector
> lógico con True en aquellas posiciones donde el dato coincida con "Alcon"
> >>> leer.Indice[posiciones] # Esto te devuelve un vector con los índices
> (de tu archivo .csv) correspondientes al laboratorio Alcon. Algo
> equivalente a la lista [60, 61, ...]
>
> Haz la prueba y creo que si checas todas las prestaciones de Pandas ya no
> querrás usar .index()
>
> Saludos y espero que esto te ayude,
> David
>
> El lun., 3 de ago. de 2020 a la(s) 15:52, Lemarchand Barker (
> lemarchand8679 en gmail.com) escribió:
>
>> Parece que no pasó el mail. El csv se lee perfecto y la primer columna
>> de la izquierda que sería el índice está ordenado, el único valor que
>> es el código de cada uno de los medicamentos es el que va cambiando y
>> no necesariamente es consecutivo, pero se los puede ordenar de menor a
>> mayor que así es como figura. Pero el valor del índice, el que empieza
>> con 0 y termina en 8122, cuando ingreso un nombre de laboratorio el
>> índice que me da de resultado no coincide con el que figura en el csv.
>> Gracias, saludos
>>
>> El lun., 3 ago. 2020 a las 17:22, Darío vía Python-es
>> (<python-es en python.org>) escribió:
>> >
>> > Hola, a ver si entiendo lo que quisieras que haga. Ingresás un
>> laboratorio, y que muestre la posición y el nombre del laboratorio en la
>> misma línea (o los laboratorios) pero sólo obtenés el índice?
>> >
>> >
>> >
>> > PD: nunca voy a entender la necesidad o necedad de responder sin
>> responder, ¡hay que tener ganas!
>> >
>> >
>> > -
>> >
>> > Sent with ProtonMail Secure Email.
>> >
>> > ‐‐‐‐‐‐‐ Original Message ‐‐‐‐‐‐‐
>> > On Monday, 3 de August de 2020 16:01, Lemarchand Barker <
>> lemarchand8679 en gmail.com> wrote:
>> >
>> > > Buenas tardes, les hago una consulta. Sigo jugando con el archivo csv,
>> > > en este caso lo que hice fue crear una lista llamada laboratorios la
>> > > cual contiene el nombre de todos los laboratorios que figuran en el
>> > > archivo. Hasta ahí perfecto, el tema era el siguiente, yo ingreso el
>> > > nombre del laboratorio y vi que se usa index() para conocer la
>> > > posición de un valor contenido en la lista. Entonces decidí probar
>> > > ingresando el nombre de un laboratorio para ver si me da el índice:
>> > >
>> > > leer = pd.read_csv('gavade.csv')
>> > >
>> > > laboratorios = []
>> > >
>> > > for lab in leer.iloc[0:8122, 4]:
>> > > laboratorios.append(lab)
>> > >
>> > > lab = input("Ingrese nombre del laboratorio: ")
>> > > print(laboratorios.index(lab))
>> > >
>> > > Cuando ejecuto se ve así:
>> > >
>> > > Ingrese nombre del laboratorio: Alcon
>> > > 58
>> > >
>> > > La cuestión es que en la posición 58, no figura el laboratorio que
>> > > ingresé. El orden es así:
>> > > 58 Abbott EPD
>> > > 59 Abbott EPD
>> > > 60 Alcon
>> > > 61 Alcon
>> > >
>> > > No entiendo, estoy usando mal la función o no se ajusta a lo que
>> > > necesito? Qué estoy haciendo mal?
>> > > Muchas gracias, saludos
>> > >
>> > > Python-es mailing list
>> > > Python-es en python.org
>> > > https://mail.python.org/mailman/listinfo/python-es
>> >
>> >
>> > _______________________________________________
>> > Python-es mailing list
>> > Python-es en python.org
>> > https://mail.python.org/mailman/listinfo/python-es
>> _______________________________________________
>> Python-es mailing list
>> Python-es en python.org
>> https://mail.python.org/mailman/listinfo/python-es
>>
> _______________________________________________
> Python-es mailing list
> Python-es en python.org
> https://mail.python.org/mailman/listinfo/python-es
>
------------ próxima parte ------------
Se ha borrado un adjunto en formato HTML...
URL: <http://mail.python.org/pipermail/python-es/attachments/20200803/102dd9c0/attachment.html>


Más información sobre la lista de distribución Python-es