3Eva_IT2018_T2 Producción minera del país

3ra Evaluación I Término 2018-2019. 14-Septiembre-2018 /CCPG001

(Editado para tarea, se mantiene el objetivo de aprendizaje)

Tema 2. (50 puntos) En el último discurso presidencial, se mencionaron algunos datos sobre las ganancias de algunos minerales del país que llamaron la atención de los ciudadanos.

http://www.pichinchauniversal.com.ec/sector-minero-sera-un-gran-aportador-economico/
http://www.pichinchauniversal.com.ec/sector-minero-sera-un-gran-aportador-economico/

Suponga que tiene todo el texto del discurso con el formato en minúsculas,  las palabras separadas por un espacio, sin signos de puntuacion ni otros símbolos. Los minerales están identificados por el prefijo «mral_» seguido del nombre del mineral. Por ejemplo: ‘mral_oro’, ‘mral_plata’, ‘mral_cobalto’

discurso = '... y el dia de ayer descubrimos en la mina mirador que la cantidad de mral_oro ...'

a) Implemente la función extraerMinerales(discurso) que al recibir el texto del discurso encuentra los nombres de todos los minerales mencionados. El resultado es una lista con los nombres de los minerales que empiezan con mayúscula y no se repiten en la lista.

Por otro lado, suponque que dispone de las tablas de producción para cada mineral de las canteras del país, costos totales de extracción, costos totales de transporte, los nombres de los minerales y minas asociados a las filas y columnas de las tablas, y los precios cada mineral, semejantes a los mostrados al final del ejercicio.
Con ésta información implemente las siguiente funciones:

b) La función calcularGanancias(P,C,T,precios)  que calcula las ganancias o pérdidas de cada mineral por mina. La función recibe la lista de precios de venta de los minerales las tres matrices: producción (P) , costos totales de extracción (C) y costos totales de transporte (T).

Adicionamente, considere las siguientes fórmulas:

ganancia = ventas - costos
ventas = producción*precio
costos = costos de transporte + costo de extracción

c) La función gananciaTotal(M, Minerales) determina las ganancias totales de cada mineral de mayor a menor, junto a los correspondientes nombres de mineral.

La función recibe la matriz del literal anterior y la lista de las etiquetas de los minerales (fila de la matriz).
El resultado es una tupla de dos elementos ordenados por ganancia:
– el vector de Numpy de las ganancias totales por mineral
– una lista con los nombres de los minerales.

d) La función top8(discurso, ganatotal) presenta los nombres de los ocho (8) minerales que generaron más ganancias totales  y que fueron mencionados en el discurso. La variable ganatotal corresponde al resultado de la función del literal anterior.

Rúbrica: literal a (1o puntos), literal b (15 puntos), literal c (15 puntos), literal d (10 puntos)

Datos de prueba:

minerales = ['Oro', 'Plata', 'Cobre']
precios   = [38.48,    3.43,    0.01]

minas = ['MIRADOR', 'FRUTA_DEL_NORTE', 'LOMA_LARGA', 'otra']

# produccion
P = np.array([[ 13524000, 121072000,  1204000,  9632000],
              [ 28000000,    952000,  9632000, 96404000],
              [126980000,    896000, 92988000,  9604000]])

# costos totales de extracción
C = np.array([[12.32, 10.23, 23.23, 19.23],
              [ 3.13,  1.78,  2.45,  1,69],
              [ 8.32,  5.25,  6.32,  6.89]])

# costos totales de transporte
T = np.array([[ 43736616, 341786256,  5442080,  28241024],
              [ 76244000,   1827840, 13966400, 435746080],
              [156439360,   1121792,300723192,  10785292]])

Referencia: Archivo original 3raEvaI_Term2018.pdf