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

2020-08-04 Por tema Lemarchand Barker
Hola, estoy practicando asi que estoy haciendo unos ejemplos con head() y
otras cosas simples hasta que me anime a hacer cosas un poquito más
"complejas".
Muchas gracias, saludos

El mar., 4 ago. 2020 a las 12:56, David Suárez vía Python-es (<
python-es@python.org>) escribió:

> Hola,
>
> ya pude abrir, aunque con trabajos el archivo. Creo que podría servirte el
> siguiente código:
>
> >> import pandas as pd
> >> leer = pd.read_csv('gavade.csv')
> >> leer[leer.LABORATORIO == "Alcon"]
>
> Creo que con eso ya tienes suficiente para replicar el funcionamiento de
> tu código original. Como ves, las estructuras de Pandas funcionan en parte
> como una base de datos relacional, así que probablemente ya no necesitarás
> usar .index(). Sólo para incitarte a aprender más de Pandas, la siguiente
> instrucción te da el promedio de los valores de IMPORTE_AFILIADO para los
> items del laboratorio Alcon:
>
> >>> leer[leer.LABORATORIO == "Alcon"].IMPORTE_AFILIADO.mean()
>
> Saludos y suerte
>
> El mar., 4 de ago. de 2020 a la(s) 07:22, Lemarchand Barker (
> lemarchand8...@gmail.com) escribió:
>
>> Buenos días, dale ahí voy.
>> A ver si se puede acceder: gavade.csv
>> 
>> Gracias, saludos
>>
>> El lun., 3 ago. 2020 a las 22:56, David Suárez vía Python-es (<
>> python-es@python.org>) escribió:
>>
>>> Lamentablemente no pude bajar el csv. El sitio me pedía crear una cuenta
>>> antes para poder bajarlo >:-/ pero si lo compartes por Dropbox o Google
>>> Drive sería mejor.
>>>
>>> El lun., 3 de ago. de 2020 a la(s) 18:42, Lemarchand Barker (
>>> lemarchand8...@gmail.com) escribió:
>>>
 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
 
 Muchas gracias


 El lun., 3 ago. 2020 a las 20:13, David Suárez vía Python-es (<
 python-es@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 (
> lemarchand8...@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
>> () 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 <
>> lemarchand8...@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 

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

2020-08-04 Por tema David Suárez vía Python-es
Hola,

ya pude abrir, aunque con trabajos el archivo. Creo que podría servirte el
siguiente código:

>> import pandas as pd
>> leer = pd.read_csv('gavade.csv')
>> leer[leer.LABORATORIO == "Alcon"]

Creo que con eso ya tienes suficiente para replicar el funcionamiento de tu
código original. Como ves, las estructuras de Pandas funcionan en parte
como una base de datos relacional, así que probablemente ya no necesitarás
usar .index(). Sólo para incitarte a aprender más de Pandas, la siguiente
instrucción te da el promedio de los valores de IMPORTE_AFILIADO para los
items del laboratorio Alcon:

>>> leer[leer.LABORATORIO == "Alcon"].IMPORTE_AFILIADO.mean()

Saludos y suerte

El mar., 4 de ago. de 2020 a la(s) 07:22, Lemarchand Barker (
lemarchand8...@gmail.com) escribió:

> Buenos días, dale ahí voy.
> A ver si se puede acceder: gavade.csv
> 
> Gracias, saludos
>
> El lun., 3 ago. 2020 a las 22:56, David Suárez vía Python-es (<
> python-es@python.org>) escribió:
>
>> Lamentablemente no pude bajar el csv. El sitio me pedía crear una cuenta
>> antes para poder bajarlo >:-/ pero si lo compartes por Dropbox o Google
>> Drive sería mejor.
>>
>> El lun., 3 de ago. de 2020 a la(s) 18:42, Lemarchand Barker (
>> lemarchand8...@gmail.com) escribió:
>>
>>> 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
>>> 
>>> Muchas gracias
>>>
>>>
>>> El lun., 3 ago. 2020 a las 20:13, David Suárez vía Python-es (<
>>> python-es@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 (
 lemarchand8...@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
> () 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 <
> lemarchand8...@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 

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

2020-08-04 Por tema Lemarchand Barker
Listo, ahora si.
Desde este link se puede acceder: gavade.csv

Muchas gracias, saludos

El mar., 4 ago. 2020 a las 9:26, Ricardo Cárdenes (<
ricardo.carde...@gmail.com>) escribió:

> Erm... El enlace no sirve.
>
> Mira, ve a Drive, haz click derecho en el fichero que quieres compartir y
> busca, según el idioma que tengas configurado, una de estas dos cosas:
>
>
>- Get shareable link
>- Obtener enlace
>
> O similar. Te debería aparecer una ventana donde se te proporciona un
> enlace nuevo, que se usará para que otros puedan acceder a tu contenido,
> pero sólo a eso y sólo siguiendo ese enlace.
>
> On Tue, Aug 4, 2020 at 2:22 AM Lemarchand Barker 
> wrote:
>
>> Buenos días, dale ahí voy.
>> A ver si se puede acceder: gavade.csv
>> 
>> Gracias, saludos
>>
>> El lun., 3 ago. 2020 a las 22:56, David Suárez vía Python-es (<
>> python-es@python.org>) escribió:
>>
>>> Lamentablemente no pude bajar el csv. El sitio me pedía crear una cuenta
>>> antes para poder bajarlo >:-/ pero si lo compartes por Dropbox o Google
>>> Drive sería mejor.
>>>
>>> El lun., 3 de ago. de 2020 a la(s) 18:42, Lemarchand Barker (
>>> lemarchand8...@gmail.com) escribió:
>>>
 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
 
 Muchas gracias


 El lun., 3 ago. 2020 a las 20:13, David Suárez vía Python-es (<
 python-es@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 (
> lemarchand8...@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
>> () 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 <
>> lemarchand8...@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))
>> > >

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

2020-08-04 Por tema Ricardo Cárdenes
Erm... El enlace no sirve.

Mira, ve a Drive, haz click derecho en el fichero que quieres compartir y
busca, según el idioma que tengas configurado, una de estas dos cosas:


   - Get shareable link
   - Obtener enlace

O similar. Te debería aparecer una ventana donde se te proporciona un
enlace nuevo, que se usará para que otros puedan acceder a tu contenido,
pero sólo a eso y sólo siguiendo ese enlace.

On Tue, Aug 4, 2020 at 2:22 AM Lemarchand Barker 
wrote:

> Buenos días, dale ahí voy.
> A ver si se puede acceder: gavade.csv
> 
> Gracias, saludos
>
> El lun., 3 ago. 2020 a las 22:56, David Suárez vía Python-es (<
> python-es@python.org>) escribió:
>
>> Lamentablemente no pude bajar el csv. El sitio me pedía crear una cuenta
>> antes para poder bajarlo >:-/ pero si lo compartes por Dropbox o Google
>> Drive sería mejor.
>>
>> El lun., 3 de ago. de 2020 a la(s) 18:42, Lemarchand Barker (
>> lemarchand8...@gmail.com) escribió:
>>
>>> 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
>>> 
>>> Muchas gracias
>>>
>>>
>>> El lun., 3 ago. 2020 a las 20:13, David Suárez vía Python-es (<
>>> python-es@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 (
 lemarchand8...@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
> () 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 <
> lemarchand8...@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 

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

2020-08-04 Por tema Lemarchand Barker
Buenos días, dale ahí voy.
A ver si se puede acceder: gavade.csv

Gracias, saludos

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

> Lamentablemente no pude bajar el csv. El sitio me pedía crear una cuenta
> antes para poder bajarlo >:-/ pero si lo compartes por Dropbox o Google
> Drive sería mejor.
>
> El lun., 3 de ago. de 2020 a la(s) 18:42, Lemarchand Barker (
> lemarchand8...@gmail.com) escribió:
>
>> 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
>> 
>> Muchas gracias
>>
>>
>> El lun., 3 ago. 2020 a las 20:13, David Suárez vía Python-es (<
>> python-es@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 (
>>> lemarchand8...@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
 () 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 <
 lemarchand8...@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@python.org
 > > https://mail.python.org/mailman/listinfo/python-es
 >
 >
 > ___
 > Python-es mailing list
 > Python-es@python.org
 > https://mail.python.org/mailman/listinfo/python-es
 ___
 Python-es mailing list
 Python-es@python.org
 https://mail.python.org/mailman/listinfo/python-es

>>> 

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

2020-08-03 Por tema David Suárez vía Python-es
Lamentablemente no pude bajar el csv. El sitio me pedía crear una cuenta
antes para poder bajarlo >:-/ pero si lo compartes por Dropbox o Google
Drive sería mejor.

El lun., 3 de ago. de 2020 a la(s) 18:42, Lemarchand Barker (
lemarchand8...@gmail.com) escribió:

> 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
> 
> Muchas gracias
>
>
> El lun., 3 ago. 2020 a las 20:13, David Suárez vía Python-es (<
> python-es@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 (
>> lemarchand8...@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
>>> () 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 <
>>> lemarchand8...@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@python.org
>>> > > https://mail.python.org/mailman/listinfo/python-es
>>> >
>>> >
>>> > ___
>>> > Python-es mailing list
>>> > Python-es@python.org
>>> > https://mail.python.org/mailman/listinfo/python-es
>>> ___
>>> Python-es mailing list
>>> Python-es@python.org
>>> https://mail.python.org/mailman/listinfo/python-es
>>>
>> ___
>> Python-es mailing list
>> Python-es@python.org
>> https://mail.python.org/mailman/listinfo/python-es
>>
> ___
> Python-es mailing list
> Python-es@python.org
> https://mail.python.org/mailman/listinfo/python-es
>
___
Python-es mailing list

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

2020-08-03 Por tema Lemarchand Barker
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

Muchas gracias


El lun., 3 ago. 2020 a las 20:13, David Suárez vía Python-es (<
python-es@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 (
> lemarchand8...@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
>> () 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 <
>> lemarchand8...@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@python.org
>> > > https://mail.python.org/mailman/listinfo/python-es
>> >
>> >
>> > ___
>> > Python-es mailing list
>> > Python-es@python.org
>> > https://mail.python.org/mailman/listinfo/python-es
>> ___
>> Python-es mailing list
>> Python-es@python.org
>> https://mail.python.org/mailman/listinfo/python-es
>>
> ___
> Python-es mailing list
> Python-es@python.org
> https://mail.python.org/mailman/listinfo/python-es
>
___
Python-es mailing list
Python-es@python.org
https://mail.python.org/mailman/listinfo/python-es


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

2020-08-03 Por tema Lemarchand Barker
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
() 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 
>  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@python.org
> > https://mail.python.org/mailman/listinfo/python-es
>
>
> ___
> Python-es mailing list
> Python-es@python.org
> https://mail.python.org/mailman/listinfo/python-es
___
Python-es mailing list
Python-es@python.org
https://mail.python.org/mailman/listinfo/python-es


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

2020-08-03 Por tema Darío vía Python-es
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 
 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@python.org
> https://mail.python.org/mailman/listinfo/python-es


___
Python-es mailing list
Python-es@python.org
https://mail.python.org/mailman/listinfo/python-es


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

2020-08-03 Por tema Ricardo Cárdenes
No podemos tener ni idea de la razón por la que te pasa esto, porque no te
vemos el resto de tus datos. *Aparentemente* *el número de laboratorio va
incluido en el listado*. Ideas que pueden contribuir:

   - Tu listado empieza en "1". Ten en cuenta que los índices de las
   estructuras de Python empiezan en "0". Por tanto, en ese caso, tu "58"
   realmente se referiría a la posición "59" (contando desde 1)
   - Tu listado tiene huecos. Si falta un número en la secuencia de los
   asignados a los laboratorios, combinado con lo anterior, ya explicaría por
   qué obtienes 58 en lugar de 60

Solución: *no uses .index* para esto. Si el número de laboratorio aparece
en el listado, en la misma fila, *captúralo al mismo tiempo que el nombre*.

On Mon, Aug 3, 2020 at 9:02 AM Lemarchand Barker 
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@python.org
> https://mail.python.org/mailman/listinfo/python-es
>
___
Python-es mailing list
Python-es@python.org
https://mail.python.org/mailman/listinfo/python-es


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

2020-08-03 Por tema Mario Lacunza
Prueba con 57

Mario Lacunza
Enviado desde mi celular

El lun., 3 de ago. de 2020 14:03, Lemarchand Barker <
lemarchand8...@gmail.com> escribió:

> 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@python.org
> https://mail.python.org/mailman/listinfo/python-es
>
___
Python-es mailing list
Python-es@python.org
https://mail.python.org/mailman/listinfo/python-es


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

2020-08-03 Por tema Lemarchand Barker
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@python.org
https://mail.python.org/mailman/listinfo/python-es