22/01/2020, 08:23:33 am *
Bienvenido(a), Visitante. Por favor, ingresa o regístrate.

Ingresar con nombre de usuario, contraseña y duración de la sesión
Noticias: Homenaje a aladan
 
 
Páginas: [1]   Ir Abajo
  Imprimir  
Autor Tema: Python división de arreglos  (Leído 2238 veces)
0 Usuarios y 1 Visitante están viendo este tema.
marsi
Pleno*
*****

Karma: +0/-0
Desconectado Desconectado

Sexo: Femenino
México México

Mensajes: 120


Ver Perfil
« : 17/02/2016, 02:56:39 am »

Hola, espero puedan ayudarme con el siguiente problema:
Tengo que dividir entrada por entrada de dos arreglos

Es decir A=[['Aguascalientes', 336710.0], ['Baja California', 1087650.0], ['Baja California Sur', 187528.0], ['Campeche', 194843.0], ['Chiapas', '3'], ['Chihuahua', 869223.0], ['Coahuila', 774391.0], ['Colima', 249623.0], ['Distrito Federal', 1123522.0], ['Durango', 465747.0], ['Estado de Mexico', 3627058.0], ['Guanajuato', 1003941.0], ['Guerrero', 394452.0], ['Hidalgo', 41318.0], ['Jalisco', 1081280.0], ['Michoacan', 220208.0], ['Morelos', 328896.0], ['Nayarit', 209381.0], ['Nuevo Leon', 1360564.0], ['Oaxaca', 550881.0], ['Puebla', 1068598.0], ['Queretaro', 445097.0], ['Quintana Roo', 384157.0], ['San Luis Potos', 590247.0], ['Sinaloa', 435461.0], ['Sonora', 717593.0], ['Tabasco', 442528.0], ['Tamaulipas', 1003868.0], ['Tlaxcala', 246369.0], ['Veracruz', 1614905.0], ['Yucatan', 589075.0], ['Zacatecas', 354608.0]]
y B=[['Aguascalientes', 289575.0], ['Baja California', 858676.0], ['Baja California Sur', 175046.0], ['Campeche', 211632.0], ['Chiapas', 1072560.0], ['Chihuahua', 910647.0], ['Coahuila', 715158.0], ['Colima', 177848.0], ['Distrito Federal', 2388534.0], ['Durango', 398471.0], ['Estado de Mexico', 3689053.0], ['Guanajuato', 1266772.0], ['Guerrero', 805230.0], ['Hidalgo', 662651.0], ['Jalisco', 1802424.0], ['Michoacan', 1066630.0], ['Morelos', 460868.0], ['Nayarit', 288680.0], ['Nuevo Leon', 1191114.0], ['Oaxaca', 934471.0], ['Puebla', 1373772.0], ['Queretaro', 450104.0], ['Quintana Roo', 363066.0], ['San Luis Potos\xa1', 631587.0], ['Sinaloa', 709960.0], ['Sonora', 705668.0], ['Tabasco', 559114.0], ['Tamaulipas', 868244.0], ['Tlaxcala', 272507.0], ['Veracruz', 1983543.0], ['Yucatan', 503106.0], ['Zacatecas', 372662.0]]
yo quiero que me divida por ejemplo:
336710.0/289575.0
me guarde este valor en un arreglo y continué con las demás entradas
Lo que yo creí hacer es en un loop:
for i in A:
for i  in B:
[texx]valor\left [ i \right ][/texx]= np.array(A). [texx]T\left [ 1 \right ]\left [ i \right ][/texx]/np.array(B).[texx]T\left [ 1 \right ]\left [ i \right ][/texx]

Mi pregunta es si puedo agregar en un solo loop para ambos arreglos y como lo hago ya que esta instrucción me marca erro y no logro hacer la división de entrada por entrada  :BangHead:
ojalá puedan ayudarme
En línea
ingmarov
Moderador Global
Pleno*
*

Karma: +0/-0
Desconectado Desconectado

Sexo: Masculino
Honduras Honduras

Mensajes: 4.430



Ver Perfil
« Respuesta #1 : 17/02/2016, 03:16:21 am »

Hola

prueba esto, quizás te sirva, lo probé en python 3.2 y funciona

Código:
C=[]
i=0

for i in range(len(A)):
C.append([A[i][0],float(A[i][1])/float(B[i][1])])
i=i+1
En línea

No te confíes, revisa lo que escribo. Yo también me equivoco.
Odio el autocorrector de Android...
marsi
Pleno*
*****

Karma: +0/-0
Desconectado Desconectado

Sexo: Femenino
México México

Mensajes: 120


Ver Perfil
« Respuesta #2 : 17/02/2016, 19:33:53 pm »

Hola, si funciono,muchas gracias   :guiño:
En línea
luis
Pleno*
*****

Karma: +1/-0
Desconectado Desconectado

Sexo: Masculino
Uruguay Uruguay

Mensajes: 304


Ver Perfil
« Respuesta #3 : 18/02/2016, 12:25:04 pm »

un poco más compacto...

Código:
A = [['a', 5.0], ['b', 10.0]]
B = [['a', 15.0], ['b', 7.0]]

print (list (map (lambda a, b: [a[0], a[1]/b[1]], A, B)))
En línea
Páginas: [1]   Ir Arriba
  Imprimir  
 
Ir a:  

Impulsado por MySQL Impulsado por PHP Powered by SMF 1.1.4 | SMF © 2006, Simple Machines LLC XHTML 1.0 válido! CSS válido!