s2Eva_IIT2018_T1 Hielo y especies en Ártico-Archivo

Ejercicio: 2Eva_IIT2018_T1 Hielo y especies en Ártico-Archivo

Usando el archivo proporcionado en el ejemplo: ‘artico2009-2019.txt

se crea la función y programa de prueba con las instrucciones más básicas y simples:

# CCPG1001-Fundamentos de programación FIEC-ESPOL
# 2Eva_IIT2018_T1 Hielo y especies en Ártico-Archivo

# ----- NUMERAL 1 ----- 
def crearMatriz(narchivo):
    archivo = open(narchivo,'r')
    
    # dimensiones de matriz
    linea = archivo.readline()
    n = int(linea.strip('\n'))
    linea = archivo.readline()
    m = int(linea.strip('\n'))
    # se crean las matrices
    mhielo09 = np.zeros(shape=(n,m),dtype=int)
    mhielo19 = np.zeros(shape=(n,m),dtype=int)
    manimales09 = np.zeros(shape=(n,m),dtype=int)
    manimales19 = np.zeros(shape=(n,m),dtype=int)
    
    # linea encabezados, No procesada
    linea = archivo.readline()
    
    # linea datos
    linea = archivo.readline()
    while not(linea==''):
        linea = linea.strip('\n')
        partes = linea.split(',')
        anio    =  partes[0]
        fila    = int(partes[1])
        columna = int(partes[2])
        hielo   = int(partes[3])
        animal  = int(partes[4])
        if (anio =='2009'):
            mhielo09[fila,columna] = hielo
            manimales09[fila,columna] = animal
        if (anio =='2019'):
            mhielo19[fila,columna] = hielo
            manimales19[fila,columna] = animal
        linea = archivo.readline()
    archivo.close()
    matrices = [mhielo09,
                mhielo19,
                manimales09,
                manimales19]
    return(matrices)

# PROGRAMA DE PRUEBA
# INGRESO
narchivo = 'artico2009-2019.txt'

# PROCEDIMIENTO
# ----- NUMERAL 1 ----- 
matrices = crearMatriz(narchivo)
mhielo09 = matrices[0]
mhielo19 = matrices[1]
manimales09 = matrices[2]
manimales19 = matrices[3]

# SALIDA
print(' ----- NUMERAL 1 ----- ')
print('hielo 2009')
print(mhielo09)
print('hielo 2019')
print(mhielo19)
print('animales 2009')
print(manimales09)
print('animales 2019')
print(manimales19)

para obtener:

 ----- NUMERAL 1 ----- 
hielo 2009
[[1 0 0 1]
 [0 1 1 1]
 [1 0 1 0]
 [1 1 1 0]
 [0 1 0 1]
 [1 1 1 0]]
hielo 2019
[[1 0 0 1]
 [0 1 0 1]
 [1 0 1 0]
 [1 0 1 0]
 [0 1 0 1]
 [0 0 1 0]]
animales 2009
[[ 1  2  4  4]
 [ 2  5  5  3]
 [ 1  3  9  1]
 [ 1  1  4  2]
 [ 4 22  4  7]
 [ 1  1  4  0]]
animales 2019
[[ 3  2  4  1]
 [ 0 11  3  5]
 [ 1  0 67  1]
 [ 2 22  3  2]
 [13 13  2  3]
 [ 3  0  1  0]]