public Par<Long, Long>[][] hacer_cuentas(boolean[][] historia, int l_ventana) {
        int l = historia.length;
        int n_entradas = historia[0].length;
        boolean[] muestra;

        Par<Long, Long>[][] respuesta = new Par[n_entradas][l_ventana];
        //Inicializar cuentas
        for (int i = 0; i < n_entradas; i++) {

            for (int j = 0; j < l_ventana; j++) {
                respuesta[i][j] = new Par<Long, Long>(0l, 0l);

            }

        }


        for (int i = 0; i < l; i++) {

            muestra = historia[i];

            //Indice en el que escribir
            for (int j = 0; j < n_entradas; j++) {

                for (int k = 0; k < l_ventana; k++) {

                    //Si la entrada es mayor o igual que el registro entonces podemos tenerlo en cuenta 
                    if (k <= i) {
                        //Si el valor de la entrada y el registro es verdadero entonces sumamos la frecuencia
                        if (muestra[j]) {
                            respuesta[j][k].setPrimero(respuesta[j][k].getPrimero() + 1);
                        }

                        //En cualquier caso sumamos uno a las apariciones
                        respuesta[j][k].setSegundo(respuesta[j][k].getSegundo() + 1);
                    }
                }

            }
        }
        return respuesta;
    }