lancis-apc / planeacion-colaborativa

Coordinación interna del Área de Planeación Colaborativa del Laboratorio Nacional de Ciencias de la Sostenibilidad.
https://lancis-apc.github.io/planeacion-colaborativa/
0 stars 1 forks source link

Analizar datos tinker #1103

Closed TatianaMerino closed 2 years ago

TatianaMerino commented 3 years ago

Objetivos:

Insumos:

Ruta de trabajo: CARPETAS_TRABAJO/igrave/tinker

Los resultados servirán de insumos para el modelo de vulnerabilidad del sector pesquero lancis-apc/espejos-lancis#119 lancis-apc/espejos-lancis#134

TatianaMerino commented 3 years ago

Datos de Holbox

Se asignó el campo "temporada" de la siguiente manera: Escama temporada periodo
e1 jul2016-feb2017
e2 jul2017-feb2018
e3 jul2018-feb2019
e4 jul2019-feb2020
Pulpo temporada periodo
p1 ago2016-nov2016
p2 ago2017-nov2017
p3 jul2018-feb2019
p4 jul2019-feb2020
Langosta temporada periodo
l1 jul2016-feb2017
l2 jul2017-feb2018
l3 jul2018-feb2019
l4 jul2019-feb2020
Mero temporada periodo
m1 jul2016-ene2017
m2 jul2017-ene2018
m3 jul2018-feb2019
m4 jul2019-feb2020
Negrillo temporada periodo
n3 jul2018-feb2019
n4 jul2019-feb2020
iaga commented 3 years ago

Chiquilá

iaga commented 3 years ago

Holbox

Insumos:

hx_cap_temp2. Base de datos con las capturas por temporada de pesca (fuera de veda) hx_cap_soc_total4. Total capturado por los socios al mes de 2016-2017 y 2017-2018 hx_series_arribo_catoche3. Facturados hx_precio_temp. Precio promedio registrado en arribos en el periodo correspondiente a las temporadas de cada especie

Gráficas

1) Captura por temporada de pesca

imagen

2) Kg capturados contra facturados

imagen

3) Diferencia capturados contra facturados

imagen

4) Captura mensual

imagen

5) Facturados contra precio

imagen

6) Comparación precio promedio: en temporada y fuera de temporada de pesca

imagen

iaga commented 3 years ago

Chiquilá

1) Especies capturadas por año

imagen

2) Especies capturadas por año

imagen

3) Especies capturadas por año (porcentaje y promedio anual)

imagen

TatianaMerino commented 3 years ago

Holbox

Temporadas de pesca

1) Producción [captura(Kg)*precio(pesos/Kg)] El precio se obtuvo como el promedio de los precios de las especies reportadas en la serie de arribos, para las fechas que corresponden a cada temporada de pesca.

image

2) Remanente estimado: 20% Escama, 1% Langosta y 4% Mero. image

Arribos anuales

3) Por especie arribos gral anual

4) Por grupos (se creó el grupo Escama) image

5)Otra representación: cap-prec arribos

TatianaMerino commented 3 years ago

Junta Álvaro 27 nov 2020

Sugerencias:

dpedroza74 commented 3 years ago

Apuntes DPP Reunión Álvaro Hernández Objetivo: análisis datos cooperativa Holbox y Chiquilá

En escama es común que no coincida lo capturado y lo facturado, ya que hay autoconsumo y venta local. En cuanto a las diferencias en los datos de mero facturado vs. capturado, tendría que verse si se está comprando mero a otros pescadores.

Remanente: es la aportación monetaria de los socios a la cooperativa.

Los datos que toma en cuenta el pescador son temporada, precio y opciones de venta.

Tipología de pescadores artesanales (Coronado et al. 2020) Tipo 1: esfuerzo bajo, especies de precio alto, ingreso alto Tipo 2: esfuerzo medio, especies de precio alto y bajo, ingreso bajo Tipo 3: esfuerzo alto, especies de precio bajo, ingreso medio

Por la sobreexplotación del mero se debería tender a pescar especies más abundantes de bajo valor

Recomienda:

Se podrían incluir datos de referencia como: precio, condiciones climáticas y estado de la población Pulpo vive 12 meses

El precio internacional está muy influenciado por la producción en Marruecos – España es la entrada a Europa Se podrían usar datos de La Viga que publica precios al consumidor, que no es igual que el precio de playa, el cual se maneja localmente Se podrían incluir datos de si el precio está arriba o abajo del año anterior en X% Las plantas de Progreso son las que establecen el precio. Hay especulación en inicio de cada temporada

La composición de especies de escama no es tan relevante para el pescador.

Silvia Salas tiene una publicación que calcula índice de importancia de especies que pondera precio y captura

CPUE captura por unidad de esfuerzo Comúnmente, este indicador está sesgado porque no se incluyen los ceros, por lo que se sobreestima la abundancia esfuerzo nominal # de lanchas por año y ver si hay más producción con menos viajes Se podría dividir en grandes grupos de especies asociadas (por ejemplo, si van por langosta, traen boquinete)

iaga commented 3 years ago

@serranoycandela

\CARPETAS_TRABAJO\igrave\tinker\insumos\originales los que nos pasó Daniela \CARPETAS_TRABAJO\igrave\tinker\insumos los que generamos

iaga commented 3 years ago

Actividades:

imagen

Facturación Histórico Temporada
Por Socio Por especie
TatianaMerino commented 3 years ago

Bases de datos trabajadas por socios

Ruta: CARPETAS_TRABAJO\igrave\tinker\insumos

hx_banco_completo_v2.xlsx hx_banco_socios_long.xlsx (verificación por @iaga)

Avances de dashboard

Ruta: CARPETAS_TRABAJO\tmerino\papiit\tinker\pivot\analisis_hx_completo.xlsx

TatianaMerino commented 3 years ago

Primer borrador de Dashboard con captura de socios de Holbox

image

Ruta: CARPETAS_TRABAJO\tmerino\papiit\tinker\pivot\dashboard_hx_tm.xlsx Nota: la base de datos se procesó desde el inicio a partir de hx_banco_completo_v2.xlsx

TatianaMerino commented 3 years ago

Propuestas de dashboards para datos tinker

Ruta: CARPETAS_TRABAJO\tmerino\papiit\tinker\pivot\

Todas las bases ocupadas están en bases_datos_tiker.xlsx. Además, al final de cada archivo está la base de datos que se ocupó para las gráficas del dashboard correspondiente.

Holbox

Captura de socios:

Otros

iaga commented 3 years ago

Revisión banco de datos

Verificación

Observaciones

Gráfica de tendencias (dashboard_hx_tm.xlsx)

SOCIO PULPO MERO ESCAMA LANGOSTA TEMPORADA Columna1
ACEVEDO B. RUBEN 0.00 672.50 149.50 33.85 2016-2017 855.85

imagen

Valor capturado de especies por socio (dashboard_hx2_tm.xlsx)

Socio Captura total
AYALA BALAM DAVID A. 2488.91

imagen

TatianaMerino commented 3 years ago

Pendientes y observaciones

TatianaMerino commented 3 years ago

@serranoycandela @iaga @dpedroza74 Ruta de trabajo: \CARPETAS_TRABAJO\tmerino\tinker\pivot_excel\dashboards\correcciones

En esta carpeta están:

Gráfica de tendencia sugerida por temporada con filtro de pescadores: image

Dashboards originales revisados: image \CARPETAS_TRABAJO\tmerino\tinker\pivot_excel\dashboards

TatianaMerino commented 3 years ago

VEDAS image

TatianaMerino commented 3 years ago

Listas las actualizaciones del dashboard de arribos CARPETAS_TRABAJO/tmerino/tinker/pivot_excel/dashboards/correcciones/arribos_cabocatoche_v2.xlsx

Pendientes:

image

iaga commented 3 years ago

@TatianaMerino

Listos los datos de los últimos años, se modificaron los archivos: base_datos_tinker.xlsx y arribos_cabocatoche_v2.xlsx. Es necesario revisar la parte de la actualización de los dashboards.

Código para el filtro

= Table.AddColumn(#"Encabezados promovidos", "Rango", each List.Max(#"Encabezados promovidos"[Año])-7) = Table.AddColumn(#"Added Custom", "filtro", each if [Año] >= [Rango] then [Año] else 0) = Table.SelectRows(#"Added Conditional Column", each [filtro] <> 0)

TatianaMerino commented 3 years ago

Datos dummy

Las tablas se anclaron a: CARPETAS_TRABAJO\tmerino\tinker\pivot_excel\base_datos_tinker.xslx (Hoja hx_socios_long)

Pendientes:

AVISO:

@serranoycandela agregar una pestaña en el ingreso de datos para registrar la temporada a la que pertenecen los datos que se ingresen (además del mes y año)

iaga commented 3 years ago

@TatianaMerino listos los dummys de captura mensual, se realizaron dos filtros: 1) última temporada, 2) últimas cuatro temporadas

TatianaMerino commented 3 years ago

Registro de arribos

CARPETAS_TRABAJO\tmerino\tinker\pivot_excel\dashboards\registro_arribos_fs.xlsm

Pendientes: @serranoycandela @iaga

Observaciones:

TatianaMerino commented 3 years ago

Registro de captura de socios

Anotaciones:

Pendientes:

Observaciones:

iaga commented 3 years ago

@TatianaMerino lista la base filtrada y la conexión para el registro de arribos

CARPETAS_TRABAJO\tmerino\tinker\pivot_excel\dashboards\registro_arribos_fs.xlsm

iaga commented 3 years ago

Código:

Última temporada

= Table.DuplicateColumn(#"Changed Type", "Temporada", "Temporada - Copy") = Table.SplitColumn(#"Duplicated Column", "Temporada - Copy", Splitter.SplitTextByDelimiter("-", QuoteStyle.Csv), {"Temporada - Copy.1", "Temporada - Copy.2"}) = Table.TransformColumnTypes(#"Split Column by Delimiter",{{"Temporada - Copy.1", Int64.Type}, {"Temporada - Copy.2", Int64.Type}}) = Table.AddColumn(#"Changed Type1", "Custom", each List.Max(#"Changed Type1"[#"Temporada - Copy.2"])) = Table.AddColumn(#"Added Custom", "filtro", each if [#"Temporada - Copy.2"] = [Custom] then [#"Temporada - Copy.2"] else 0) = Table.SelectRows(#"Added Conditional Column", each [filtro] <> 0)

Últimos años

= Table.AddColumn(#"Changed Type", "Mínimo", each List.Min(#"Changed Type"[Año])) = Table.AddColumn(#"Added Custom", "Máximo", each List.Max(#"Added Custom"[Año])) = Table.AddColumn(#"Added Custom1", "Subtraction", each [Máximo] - [Mínimo], type number) = Table.AddColumn(#"Inserted Subtraction", "Rango_num", each if [Subtraction] >= 7 then 7 else [Subtraction]) = Table.AddColumn(#"Added Conditional Column", "Rango", each [Máximo] - [Rango_num], type number) = Table.AddColumn(#"Inserted Subtraction1", "Filtro_año", each if [Año] >= [Rango] then [Año] else 0) = Table.SelectRows(#"Added Conditional Column1", each [Filtro_año] <> 0)

iaga commented 3 years ago

@TatianaMerino lista la unión del registro y los filtros (última temporada, últimas 4)

\CARPETAS_TRABAJO\tmerino\tinker\pivot_excel\dashboards\registro_captura_fs.xlsm

TatianaMerino commented 3 years ago

Revisión de dashboards

Correcciones Arribos

Correcciones Capturas

Observación: al menos debe haber un registro en la hoja de datos (tabla original) a mano para que el primer registro automático pueda integrarse a la tabla dinámica.

Nota: En la carpeta de copias_seguridad están copias de los archivos revisados. Se hizo un archivo de arribos sin datos (vacío) y otro con los datos dummy (lleno)

iaga commented 3 years ago

Código macros captura

Sub add_data() last_captura = Sheets("registro_datos").Cells(Rows.Count, 3).End(xlUp).Row last_row = Sheets("datos").Cells(Rows.Count, 1).End(xlUp).Row new_row = last_row + 1

For Each Row In Range("C8:I" & last_captura).Rows
    socio = Row.Cells(1, 1).Value
    langosta = Row.Cells(1, 2).Value
    pulpo = Row.Cells(1, 3).Value
    mero = Row.Cells(1, 4).Value
    negrillo = Row.Cells(1, 5).Value
    If Not langosta = "" Then
        Sheets("datos").Range("A" & new_row).Value = socio
        Sheets("datos").Range("B" & new_row).Value = Range("C2").Value
        Sheets("datos").Range("C" & new_row).Value = Range("D2").Value
        Sheets("datos").Range("D" & new_row).Value = Range("R5").Value
        Sheets("datos").Range("E" & new_row).Value = Range("R6").Value
        Sheets("datos").Range("F" & new_row).Value = Range("G2").Value
        Sheets("datos").Range("G" & new_row).Value = "Langosta"
        Sheets("datos").Range("H" & new_row).Value = langosta
        new_row = new_row + 1
    End If
    If Not pulpo = "" Then
        Sheets("datos").Range("A" & new_row).Value = socio
        Sheets("datos").Range("B" & new_row).Value = Range("C2").Value
        Sheets("datos").Range("C" & new_row).Value = Range("D2").Value
        Sheets("datos").Range("D" & new_row).Value = Range("R5").Value
        Sheets("datos").Range("E" & new_row).Value = Range("R6").Value
        Sheets("datos").Range("F" & new_row).Value = Range("G2").Value
        Sheets("datos").Range("G" & new_row).Value = "Pulpo"
        Sheets("datos").Range("H" & new_row).Value = pulpo
        new_row = new_row + 1
    End If
    If Not mero = "" Then
        Sheets("datos").Range("A" & new_row).Value = socio
        Sheets("datos").Range("B" & new_row).Value = Range("C2").Value
        Sheets("datos").Range("C" & new_row).Value = Range("D2").Value
        Sheets("datos").Range("D" & new_row).Value = Range("R5").Value
        Sheets("datos").Range("E" & new_row).Value = Range("R6").Value
        Sheets("datos").Range("F" & new_row).Value = Range("G2").Value
        Sheets("datos").Range("G" & new_row).Value = "Mero"
        Sheets("datos").Range("H" & new_row).Value = mero
        new_row = new_row + 1
    End If
    If Not negrillo = "" Then
        Sheets("datos").Range("A" & new_row).Value = socio
        Sheets("datos").Range("B" & new_row).Value = Range("C2").Value
        Sheets("datos").Range("C" & new_row).Value = Range("D2").Value
        Sheets("datos").Range("D" & new_row).Value = Range("R5").Value
        Sheets("datos").Range("E" & new_row).Value = Range("R6").Value
        Sheets("datos").Range("F" & new_row).Value = Range("G2").Value
        Sheets("datos").Range("G" & new_row).Value = "Negrillo"
        Sheets("datos").Range("H" & new_row).Value = negrillo
        new_row = new_row + 1
    End If

Next
Range("C8:I30").Value = ""
Range("C2").Value = Date
Range("D2").Value = Date
MsgBox "Datos de captura guardados correctamente"
Application.Goto (ActiveWorkbook.Sheets("registro_datos").Range("C8"))
ActiveWorkbook.Save

End Sub

iaga commented 3 years ago

Código macros arribos

Sub add_data()

If Range("C4").Value = "" Or Range("C5") = "" Or Range("C6").Value = "" Or Range("G2").Value = "" Then
   MsgBox "Faltan datos generales"
Else
    last_captura = Sheets("registro_datos").Cells(Rows.Count, 3).End(xlUp).Row
    faltan_kilos = WorksheetFunction.CountBlank(Range("H8:I" & last_captura))
    If faltan_kilos > 0 Then
        MsgBox "Faltan datos de kg o precio por kg"
    Else
        last_row = Sheets("test_datos").Cells(Rows.Count, 1).End(xlUp).Row

        new_row = last_row + 1
        folio = Range("C4").Value

        Range("C8:S16").Copy

        Sheets("test_datos").Range("A" & new_row).PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks:=False, Transpose:=False

        Range("C8:C16").Value = ""
        Range("H8:I16").Value = ""
        Range("C4:C6").Value = ""
        Range("G2").Value = ""
        Range("C2").Value = Date
        Range("D2").Value = Date
        MsgBox "Datos del folio " & folio & " guardados correctamente"
        Application.CutCopyMode = False
        Application.Goto (ActiveWorkbook.Sheets("registro_datos").Range("D2"))
        ActiveWorkbook.Save
    End If
End If

End Sub

iaga commented 3 years ago

@TatianaMerino Lista la nueva versión de captura, para agregar la gráfica que falta:

\CARPETAS_TRABAJO\tmerino\tinker\pivot_excel\dashboards\registro_captura_fs_t_vacio_v2.xlsm

iaga commented 3 years ago

Correcciones

Macros

Carpeta de trabajo: \CARPETAS_TRABAJO\tmerino\tinker\pivot_excel\dashboards\correcciones_120621

Descripción: se ubican las versiones con las modificaciones en las macros, según lo acordado en la reunión del Viernes 12 de Junio. Es decir:

Arribos

@iaga

image

Captura

@iaga

image

Dashboards

Arribos

\CARPETAS_TRABAJO\tmerino\tinker\pivot_excel\dashboards\correcciones_140621\registro_arribos.xlsm

Hoja: histórico reciente

Actividades:

image

Captura

\CARPETAS_TRABAJO\tmerino\tinker\pivot_excel\dashboards\correcciones_140621\registro_captura.xlsm

Actividades:

Nota1: la versión con las modificaciones que se hicieron "en vivo" el viernes se ubica en la ruta: \CARPETAS_TRABAJO\tmerino\tinker\pivot_excel\dashboards\finales\registro_captura.xlsm Nota2: Al final de la base se incluyó UN SOCIO para que aparezca "Negrillo". Es necesario eliminarlo al momento de la entrega.

TatianaMerino commented 3 years ago

@iaga Listas las modificaciones en la carpeta correcciones_140621 Archivos:

Nota: falta eliminar el registro de Negrillo en Captura