[Python-es] Que modulo me recomiendan.
Chema Cortes
pych3m4 en gmail.com
Vie Sep 26 03:28:45 CEST 2014
El 25 de septiembre de 2014, 0:25, Peon Blanco <peonblanco83 en gmail.com>
escribió:
> Alguien me podría orientar.
>
> ya que a un no e podido resolver el problema de que me repita los id.
>
Supongamos que tienes los datos en la variable "Todo" y que tenemos una
función llamada "casable" que valida si dos elementos son compatibles. Por
ejemplo:
def casable(i,j):
return i[2] != j[2] and -80 <= i[1]-j[1] <= 80
Definimos dos secuencias:
# ids disponibles para chequear
disponibles = {x[0] for x in Todo}
# pares a chequear
from itertools import combinations
pares = [(i,j) for (i,j) in combinations(Todo,2) if casable(i,j)]
# procesamos la lista de pares:
for (i,j) in pares:
if {i[0],j[0]} <= disponibles:
Guarda_par(i[0],j[0])
disponibles -= {i[0],j[0]} # dejan de estar disponibles
Así obtendrás una solución de la múltiples posibles. Con toda probabilidad,
no será la mejor.
> El 22 de septiembre de 2014, 22:44, Peon Blanco <peonblanco83 en gmail.com>
> escribió:
>
> Agrandes rasgos leo registro por registro y voy comparando.
>> si me pueden dar una idea para que esto sea aleatorio se los agradecería.
>>
>> BASE DE DATOS SQLITE
>>
>> ID PESO PERTENECE STATUS
>> 1 2000 dueño NO
>> 2 2100 dueño NO
>> 3 2220 dueño NO
>> 4 2000 dueño1 NO
>> 5 2100 dueño1 NO
>> 6 2200 dueño1 NO
>> 7 2200 dueño2 NO
>> 8 2080 dueño2 NO
>> 9 2180 dueño2 NO
>>
>> Codigo.
>>
>> Todo=Casatodo() #funcio para traer todos los datos de sqlite filtrando el
>> status como "NO"
>> for x in Todo: #Lo paso el for para leer 1 x 1
>> for i in Todo: #otro for para hacer las comparaciones
>> if x[0] == i[0]: #Valida si es el mismo registro, si es igual
>> solo pasamos
>> continue
>> else:
>> if x[2] == i[2]: #Valida si es del mismo partido, si es igual
>> solo pasamos
>> continue
>> else:
>> mas80=int(x[1])+80 #Tolerancia de peso mayor
>> menos80=int(x[1])-80 #Tolerancia de peso menor
>> if int(i[1]) > menos80 and int(i[1]) < mas80: # Valida
>> que se cumpla la condición de diferencia de pero ya sea mayor o menor
>> Guarda_par(x[0],i[0]) #Guardo en una tabla diferente
>> los pares
>> Actualizacasa(x[0]) # Solo agrego un "SI" al estatus
>> Actualizacasa(i[0]) # Solo agrego un "SI" al estatus
>> TODO=CASATODOS() #vuelvo a leer los datos para seguir
>> comparando
>> break
>>
>>
>> este código me regresa los siguientes pares.
>>
>> 1 4 -- Bien
>> 2 5 -- Bien
>> 3 6 -- Bien
>> 5 8 -- Mal 5 repetido
>> 6 7 -- Mal 6 repetido
>>
>>
>>
>>
>> El 22 de septiembre de 2014, 15:32, Francisco Palm <
>> francisco.palm en gmail.com> escribió:
>>
>>
>>> Para una tabla de esas características, aplicar filtros (que obviamente
>>> tienes que diseñar el algoritmo según tus necesidades, no parece
>>> complicado), un módulo interesante es Pandas http://pandas.pydata.org/
>>>
>>> Saludos
>>>
>>> F. Palm
>>>
>>>
>>> 2014-09-22 14:31 GMT-04:30 Peon Blanco <peonblanco83 en gmail.com>:
>>>
>>>> Hola buenas tardes expongo el siguiente problema ya que no se que
>>>> modulo usar.
>>>>
>>>> tengo algo como esto
>>>>
>>>> ID Peso Pertenece
>>>> 76 1800 1
>>>> 77 1860 2
>>>> 78 1850 1
>>>> 79 1910 3
>>>>
>>>> necesito algo que valide estos datos haciendo una comparación.
>>>>
>>>> que el peso no sobrepase 80 gr y que no pertenezca al mismo(Pertenece).
>>>>
>>>> el ejemplo anterior debería de queda así.
>>>> ID ID
>>>> 76 - 77 - se cumple la regla de los 80 gr (con el ID 78 se cumple la
>>>> regla de los gramos pero pertenecen al mismo (Pertenece))
>>>> 78 - 79
>>>>
>>>> me pueden orientar en que modulo usar.
>>>>
>>>> _______________________________________________
>>>> Python-es mailing list
>>>> Python-es en python.org
>>>> https://mail.python.org/mailman/listinfo/python-es
>>>> FAQ: http://python-es-faq.wikidot.com/
>>>>
>>>>
>>>
>>>
>>> --
>>> --------------------------------------
>>> fpalm en mapologo.org.ve
>>> francisco.palm en gmail.com
>>>
>>> cel: +58 +424 7228252
>>> tel: +58 +274 6352001
>>>
>>> ----
>>> Debemos ser libres, no para hacer lo que nos plazca, sino libres para
>>> comprender muy profundamente nuestros propios instintos e impulsos. K
>>>
>>> _______________________________________________
>>> 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/
>
>
--
Hyperreals *R "Quarks, bits y otras criaturas infinitesimales":
http://ch3m4.org/blog
Buscador Python Hispano: http://ch3m4.org/python-es
------------ próxima parte ------------
Se ha borrado un adjunto en formato HTML...
URL: <http://mail.python.org/pipermail/python-es/attachments/20140926/e2b1b8f8/attachment.html>
Más información sobre la lista de distribución Python-es