[Python-es] numpy.absolute

Rolando Paz flxpaz en gmail.com
Mie Dic 30 08:57:15 EST 2015


Hola de nuevo a todos....

Con la ayuda de ustedes logre graficar los datos...

Adjunto las imágenes...

Tengo la opción de representar el dato con el numero negativo o con su
valor absoluto.

Agradezco de nuevo a todos...  :-)

Muchos saludos y  FELIZ AÑO NUEVO 2016!!!


El 29 de diciembre de 2015, 17:13, Pedro Jorge De Los Santos <
delossantosmfq en gmail.com> escribió:

> Rolando,
>
>
> Puedes probar con lo siguiente:
>
> y = np.array([float(y[k].split("-")[-1]) for k in range(len(y))])
>
> Y lo mismo con el array "x"...
>
> En este caso, no necesitarás utilizar np.absolute porque el método split
> "elimina" el signo negativo.
>
>
>
> Saludos.
>
> El 29 de diciembre de 2015, 16:24, Rolando Paz <flxpaz en gmail.com>
> escribió:
>
>> Hola Yamila
>>
>> Muchas gracias por tu correo.
>>
>> Lo que necesito es corregir cualquier valor negativo que tenga ceros a la
>> izquierda.
>>
>> Algunos ejemplos:
>>
>> 00000000-1
>> 000000-355
>> 0000-54623
>> 0000000-56
>> 0-98756874
>>
>> El valor negativo depende de la potencia en dBm de la senial analógica
>> que le ingrese a la tarjeta que estoy usando.
>>
>> Al colocar el print para observar el contenido de "y", observo esto:
>>
>> ['0000000000' '0000000000' '0000000000' '00-4834129' '0000000000'
>>  '0000000000' '0000000000' '0000000000']
>>
>> Veo cadenas separadas por un espacio en blanco.
>>
>> cols = np.loadtxt(args.bram, dtype=str, usecols=[2,8])
>>
>> x = cols[:,0]
>> y = cols[:,1]
>>
>> print 'este es el contenido de y =',y
>>
>> y = float(str(y[0]).lstrip("0"))
>>
>> El error que surge es este:
>>
>> Traceback (most recent call last):
>>   File "plot_bram.py", line 28, in <module>
>>     y = float(str(y[0]).lstrip("0"))
>> ValueError: could not convert string to float:
>>
>> Seguire intentando... :-)
>>
>>
>> El 29 de diciembre de 2015, 13:05, Yamila Moreno Suárez <
>> yamila.ms en gmail.com> escribió:
>>
>>> Rolando, un par de cositas:
>>>
>>> Si *y* tiene el valor que nos pasas, entonces tu código tiene que ser
>>> algo como:
>>>
>>> *y = float(str(y[0]).lstrip("0"))*
>>>
>>> ¡ojo! en lstrip la "l" significa "left", así que solo te quita los ceros
>>> de la izquierda. ¿así te sirve?
>>>
>>> Por otro lado, te doy un par de pistas para que tú mismo hagas debugging
>>> del programa:
>>>
>>> 1) usa print, sí tal cual. Añade en tu programa líneas con:
>>>
>>> *print(" VALOR DE Y ANTES DE TAL O CUAL TRANSFORMACION ", y)*
>>>
>>> 2) usa pdb. Si en cualquier línea de tu programa pones "*import pdb;
>>> pdb.set_trace()*", al lanzar la ejecución se parará en ese punto, y te
>>> dará un intérprete de python con las variables de tu programa, de forma que
>>> puedes investigar qué valor tiene en un punto concreto.
>>>
>>> El problema que estás teniendo tiene mucho de "afinar" el resultado como
>>> te guste, o como lo necesites según el caso, y para eso, es muy
>>> recomendable que estés constantemente evaluando qué valores tienen las
>>> variables y probando las transformaciones que necesites.
>>>
>>> ¡¡mucho ánimo!!
>>> yami
>>>
>>>
>>>
>>> 2015-12-29 19:47 GMT+01:00 Rolando Paz <flxpaz en gmail.com>:
>>>
>>>> Gracias por todos los consejos.
>>>>
>>>> Hice esto:
>>>>
>>>> cols = np.loadtxt(args.bram, dtype=str, usecols=[2,8])
>>>>
>>>> x = cols[:,0]
>>>> y = cols[:,1]
>>>>
>>>> max_x = np.argmax(y)
>>>>
>>>> y = float(str(y).lstrip("0"))
>>>>
>>>> plt.plot(x,y)
>>>> plt.show()
>>>>
>>>> El nuevo error es este:
>>>>
>>>> $ python plot_bram.py -b bram_ac_real_test -f 50
>>>> Traceback (most recent call last):
>>>>   File "plot_bram.py", line 27, in <module>
>>>>     y = float(str(y).lstrip("0"))
>>>> ValueError: could not convert string to float: ['0000000000'
>>>> '0000000000' '0000000000' '00-4834129' '0000000000'
>>>>  '0000000000' '0000000000' '0000000000']
>>>>
>>>> Entiendo que este es el contenido del arreglo "y":
>>>>
>>>> ['0000000000' '0000000000' '0000000000' '00-4834129' '0000000000'
>>>>  '0000000000' '0000000000' '0000000000']
>>>>
>>>> Esta representación esta correcta?
>>>>
>>>>
>>>>
>>>>
>>>>
>>>> El 29 de diciembre de 2015, 12:37, Yamila Moreno Suárez <
>>>> yamila.ms en gmail.com> escribió:
>>>>
>>>>> Rolando, el error te indica que tienes un tipo "ndarray" y que los
>>>>> ndarray no tienen "lstrip".
>>>>>
>>>>> lstrip es un método de strings (cadenas de texto), como la que ves en
>>>>> el ejemplo que te dio Juanlu.
>>>>>
>>>>> Siguiendo con los consejos que te han dado en correos anteriores, lo
>>>>> que tendrías que hacer es (1)pasar el valor de tu ndarray (que si no me
>>>>> equivoco es 00-48....) a string, (2)aplicarle la modificación y (3)después
>>>>> volver a pasarlo al tipo que necesites.
>>>>>
>>>>> en varios pasos:
>>>>> y = str(y)
>>>>> y = y.lstrip("0")
>>>>> y = float(y)
>>>>>
>>>>> en un solo paso:
>>>>> y = float(str(y).lstrip("0"))
>>>>>
>>>>> suerte :)
>>>>>
>>>>>
>>>>>
>>>>> 2015-12-29 19:20 GMT+01:00 Rolando Paz <flxpaz en gmail.com>:
>>>>>
>>>>>> Mira lo que surge:
>>>>>>
>>>>>> $ python plot_bram.py -b bram_ac_real -f 50
>>>>>> Traceback (most recent call last):
>>>>>>   File "plot_bram.py", line 27, in <module>
>>>>>>     y = y.lstrip("0")
>>>>>> AttributeError: 'numpy.ndarray' object has no attribute 'lstrip'
>>>>>>
>>>>>> Codigo:
>>>>>>
>>>>>> cols = np.loadtxt(args.bram, dtype=str, usecols=[2,8])
>>>>>>
>>>>>> x = cols[:,0]
>>>>>> y = cols[:,1]
>>>>>>
>>>>>> max_x = np.argmax(y)
>>>>>>
>>>>>> y = y.lstrip("0")
>>>>>>
>>>>>> plt.plot(x,y)
>>>>>> plt.show()
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>> El 29 de diciembre de 2015, 12:10, Juan Luis Cano <
>>>>>> juanlu001 en gmail.com> escribió:
>>>>>>
>>>>>>> On 2015-12-29 18:20, Rolando Paz wrote:
>>>>>>>
>>>>>>> Lo que entiendo que necesito es encontrar una función que elimine
>>>>>>> todos los ceros a la izquierda del signo menos.
>>>>>>>
>>>>>>>
>>>>>>> Tal vez puedes probar con
>>>>>>>
>>>>>>> >>> "00-4834129".lstrip("0")
>>>>>>> '-4834129'
>>>>>>>
>>>>>>> https://docs.python.org/3/library/stdtypes.html#str.lstrip
>>>>>>>
>>>>>>> Juan Luis
>>>>>>>
>>>>>>> _______________________________________________
>>>>>>> Python-es mailing list
>>>>>>> Python-es en python.org
>>>>>>> https://mail.python.org/mailman/listinfo/python-es
>>>>>>> FAQ: http://python-es-faq.wikidot.com/
>>>>>>>
>>>>>>>
>>>>>>
>>>>>> _______________________________________________
>>>>>> Python-es mailing list
>>>>>> Python-es en python.org
>>>>>> https://mail.python.org/mailman/listinfo/python-es
>>>>>> FAQ: http://python-es-faq.wikidot.com/
>>>>>>
>>>>>>
>>>>>
>>>>>
>>>>> --
>>>>> Yamila  Moreno Suárez
>>>>> http://dendarii.es
>>>>> http://moduslaborandi.net
>>>>>
>>>>> _______________________________________________
>>>>> Python-es mailing list
>>>>> Python-es en python.org
>>>>> https://mail.python.org/mailman/listinfo/python-es
>>>>> FAQ: http://python-es-faq.wikidot.com/
>>>>>
>>>>>
>>>>
>>>> _______________________________________________
>>>> Python-es mailing list
>>>> Python-es en python.org
>>>> https://mail.python.org/mailman/listinfo/python-es
>>>> FAQ: http://python-es-faq.wikidot.com/
>>>>
>>>>
>>>
>>>
>>> --
>>> Yamila  Moreno Suárez
>>> http://dendarii.es
>>> http://moduslaborandi.net
>>>
>>> _______________________________________________
>>> Python-es mailing list
>>> Python-es en python.org
>>> https://mail.python.org/mailman/listinfo/python-es
>>> FAQ: http://python-es-faq.wikidot.com/
>>>
>>>
>>
>> _______________________________________________
>> Python-es mailing list
>> Python-es en python.org
>> https://mail.python.org/mailman/listinfo/python-es
>> FAQ: http://python-es-faq.wikidot.com/
>>
>>
>
> _______________________________________________
> Python-es mailing list
> Python-es en python.org
> https://mail.python.org/mailman/listinfo/python-es
> FAQ: http://python-es-faq.wikidot.com/
>
>
------------ próxima parte ------------
Se ha borrado un adjunto en formato HTML...
URL: <http://mail.python.org/pipermail/python-es/attachments/20151230/2cd4c5a7/attachment.html>
------------ próxima parte ------------
A non-text attachment was scrubbed...
Name: FFT_real_jorge.png
Type: image/png
Size: 67469 bytes
Desc: no disponible
URL: <http://mail.python.org/pipermail/python-es/attachments/20151230/2cd4c5a7/attachment.png>
------------ próxima parte ------------
A non-text attachment was scrubbed...
Name: FFT_real_kiko.png
Type: image/png
Size: 70976 bytes
Desc: no disponible
URL: <http://mail.python.org/pipermail/python-es/attachments/20151230/2cd4c5a7/attachment-0001.png>


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