jueves, 27 de marzo de 2014

Experimento 3.1: Agrupar datos por hora y caracterizar los clusters

En el fichero 'GetHourlyClrIndex.m':

Paso 0: cargamos los datos iniciales

Paso 1: filtramos por fecha (entre el 1 de noviembre de 2010 y el 31 de octubre de 2011)

Paso 2: Calculamos el índice de claridad para cada registro

Paso 3: Agrupamos los registros por horas, tenemos un registro por cada minuto, agrupamos para obtener un registro por cada hora, el registro final tiene el minuto 30 de cada hora.

En el fichero 'CaracterizeClusters.m':

Paso 1: Filtramos por año, mes y día comparando con los datos del experimento anterior (datos_fdpa3).

Paso 2: Filtramos por año, mes, día y hora para quitar las horas nocturnas, comparando con los datos del experimento anterior (data_clr_ind_filtered).

Paso 3: Añadimos los índices de los clusters según las fechas (para 6 clústers)


Con los datos agrupados y filtrados, esta es la gráfica de las muestras para la radiación extraterrestre (rojo) y la radiación horizontal (azul):



Cluster para cada muestra horaria:



Indice de transparencia medio a lo largo de las horas del día para cada cluster:




Radiación Horizontal para cada cluster a lo largo de las horas del día (media):




INDICE DE TRANSPARENCIA (AZUL) Y DESVIACION ESTANDAR (ROJO) (SEGUN HORAS DEL DIA)

Cluster 1

Cluster 2

Cluster 3

Cluster 4

Cluster 5

Cluster 6

martes, 25 de marzo de 2014

Experimento 3: K-Means, intervalos de 20 minutos, Test K-S

Recompilamos los datos haciendo intervalos de 20 minutos, y tenemos un total de 276 días válidos de datos.

Aplicamos K-means para hacer 6 grupos y vamos a aplicar el test de Kolmogorov-Smirnov para comprobar la bondad del ajuste de los clusters.

Aplicando K-means con K=6 obtenemos esto:



Y aplicando el test de Kolmogorov-Smirnov, con alpha = 0.05, el valor para comparar es 0.35 (0.192 en el primer intento):

ClusterMuestras del clúster Muestras que superan la distancia máxima del test Porcentaje de muestras que superan la distancia máxima
153 0 0
248 4 8.3333
323 5 21.7391
451 0 0
570 0 0
631 1 3.2258

Cluster 1:


Cluster 2:


Cluster 3:


Cluster 4:


Cluster 5:


Cluster 6:



En el primer intento, con 0.192 teníamos:
ClusterMuestras del clúster Muestras que superan la distancia máxima del test Porcentaje de muestras que superan la distancia máxima
170 2 2.8571
223 19 82.6087
353 13 24.5283
431 16 51.6129
551 17 33.3333
648 25 52.0833

lunes, 24 de marzo de 2014

Experimento 1.5 - SOM

Vamos a aplicar el algoritmo SOM sobre los mismos datos:

SOM 3 clusters (1x3):

Distancia 'boxdist':
Elementos en los clusters: 36 68 108


Distancia 'dist':
Elementos en los clusters: 49 82 81


SOM 4 clusters (2x2):

Distancia 'boxdist':
Elementos en los clusters: 35 77 51 49


Distancia 'dist':
Elementos en los clusters: 35 78 51 48

viernes, 21 de marzo de 2014

Experimento 1 - KMeans

Aplicamos Kmeans a los datos de la función FDPA, separando en 2, 3 y 4 clusters y aplicando las ditancias euclídea y cityblock:

De arriba a abajo, los clusters de K=2,3,4 y para cada valor de K, la distancia cityblock y la distancia euclídea:

K=2, distancia cityblock:
Distancias máximas en cada cluster:

0.7852
0.4331


K=2, distancia euclídea:
Distancias máximas en cada cluster:

0.4310
0.7058


K=3, distancia cityblock:
Distancias máximas en cada cluster:

0.5657
0.3715
0.7654


K=3, distancia euclídea:
Distancias máximas en cada cluster:

0.6591
0.4506
0.4983


K=4, distancia cityblock:
Distancias máximas en cada cluster:

0.3426
0.5769
0.6997
0.2676


K=4, distancia euclídea:
Distancias máximas en cada cluster:

0.3061
0.3274
0.5315
0.5739














Experimento 0

Sobre los datos preprocesados anteriormente, analizamos algunos aspectos básicos. Como hemos dicho anteriormente, los datos abarcan 365 días, desde noviembre de 2010 hasta octubre de 2011 (los datos se encuentran en el fichero datos_fdpa3.mat).

Valores medios (azul) y máximo del índice de claridad para los 365 días:



Valores de variabilidad en valor absoluto:



Valores válidos para cada día:








Preprocesamiento de datos

Los datos meteorológicos del fieldpoint se preprocesan de la siguiente forma (fichero CalcularGextSOM.m):

* Abrimos el fichero 'measurements.mat' para leer. Este fichero contiene datos desde julio de 2010 hasta diciembre de 2013.

* Filtramos las fechas y nos quedamos con el rango de datos que va desde el 1 de noviembre de 2010 hasta el 31 de octubre de 2011, un año completo. Tomamos este rango ya que no tiene periodos significativos de falta de datos en medio.

* Calculamos el índice de transparencia para cada registro. Usamos ecuaciones para calcular la radiación extraterrestre en la latitud correspondiente y luego dividimos la radiación global observada en superficie por la radiación extraterrestre calculada.

* Agrupamos los valores en intervalos de 5 minutos, y hacemos la media de las medidas.

* Filtramos los valores de indice de transparencia que no están entre 0 y 1.

* Agrupamos los valores, un vector de 100 elementos para cada día. Cada vector contiene 100 valores que representan el número de muestras que están en un determinado rango, es decir, se divide el rango del índice de transparencia en 100 partes.

* Eliminamos los días que no alcanzan una cantidad mínima de valores, según las horas de sol de cada día, teniendo en cuenta un mínimo de elevación del Sol de 5 grados, y exigiendo un 90% de los valores.

* Calculamos la función de densidad de probabilidad acumulada sobre los registros diarios que tenemos.



Datos meteorológicos de Fieldpoint

Se dispone de una base de datos meteorológicos obtenidos con un fieldpoint situado en la azotea de la ETSI Informática. El fieldpoint recoge datos de radiación, temperatura, humedad, dirección del viento, precipitaciones, etc. y guarda un registro cada minuto.

Se dispone de datos desde julio de 2010 hasta diciembre de 2013, pero faltan algunos periodos y hay periodos con algunos datos no válidos.

Los datos se encuentran en el fichero 'measurements.mat' en formato matlab (el fichero 'measurements.txt' contiene los mismos datos en formato texto.

Ejemplo de varias líneas de texto del fichero:

Timestamp Wind_dir Wind_speed Air_temp Rel_hum Atm_pres G_hor G_beam G_diff G_tilted G_cel_ater G_cel_isof G_splite Rain
20/07/2010 14:59:49 182 0.0 29.2 62 1005 782 756 806 806 787 811 864 0.0
20/07/2010 15:00:49 100 0.0 29.2 62 1005 775 752 798 798 778 803 853 0.0
20/07/2010 15:01:49 175 0.0 29.1 62 1005 773 741 797 797 777 803 853 0.0
20/07/2010 15:02:49 162 0.0 29.1 63 1005 767 734 790 790 768 794 843 0.0
20/07/2010 15:03:49 160 0.0 28.9 63 1005 774 745 797 797 779 805 853 0.0
20/07/2010 15:04:49 173 0.0 29.0 62 1005 767 739 790 790 769 796 844 0.0
20/07/2010 15:05:49 110 0.0 29.1 62 1005 767 742 789 789 768 794 843 0.0
20/07/2010 15:06:49 112 0.0 29.1 63 1005 761 739 784 784 763 790 840 0.0
20/07/2010 15:07:49 178 0.0 29.1 63 1005 744 719 764 764 740 765 813 0.0
20/07/2010 15:08:49 176 0.0 29.2 62 1005 763 751 784 784 765 790 840 0.0
20/07/2010 15:09:49 182 0.0 29.2 62 1005 749 732 770 770 750 776 824 0.0
20/07/2010 15:10:49 107 0.0 29.1 64 1005 748 734 768 768 747 772 819 0.0
20/07/2010 15:11:49 113 0.0 28.7 66 1005 750 736 771 771 751 774 825 0.0
20/07/2010 15:12:49 126 0.0 28.4 67 1005 737 719 756 756 735 759 807 0.0
20/07/2010 15:13:49 104 0.0 28.0 69 1005 731 711 750 750 729 754 804 0.0
20/07/2010 15:14:49 154 0.0 28.0 67 1005 734 719 752 752 735 759 808 0.0
20/07/2010 15:15:49 108 0.0 28.1 66 1005 736 733 754 754 735 760 808 0.0
20/07/2010 15:16:49 118 0.0 28.2 66 1005 738 738 758 758 738 764 811 0.0
20/07/2010 15:17:49 165 0.0 28.2 66 1005 731 724 750 750 730 755 803 0.0
20/07/2010 15:18:49 138 0.0 28.1 67 1005 728 718 746 746 727 750 800 0.0
20/07/2010 15:19:49 144 0.0 28.0 67 1005 719 709 737 737 720 743 791 0.0
20/07/2010 15:20:49 121 0.0 28.1 66 1005 730 728 747 747 730 754 803 0.0
20/07/2010 15:21:49 117 0.0 27.9 68 1005 720 719 737 737 719 743 792 0.0
20/07/2010 15:22:49 107 0.0 27.7 69 1005 710 709 727 727 707 731 781 0.0
20/07/2010 15:23:49 110 0.0 27.8 67 1005 715 726 731 731 712 737 786 0.0
20/07/2010 15:24:49 71 0.0 27.9 66 1005 705 718 721 721 704 728 777 0.0
20/07/2010 15:25:49 112 0.0 27.8 69 1005 707 719 723 723 704 728 777 0.0
20/07/2010 15:26:49 90 0.0 27.7 70 1005 704 714 720 720 703 727 776 0.0
20/07/2010 15:27:49 104 0.0 27.9 68 1005 698 711 713 713 694 717 767 0.0
20/07/2010 15:28:49 92 0.0 27.8 69 1005 704 728 719 719 701 725 774 0.0
20/07/2010 15:29:49 111 0.0 27.9 68 1005 701 725 716 716 697 720 769 0.0
20/07/2010 15:30:49 97 0.0 27.9 66 1005 704 732 718 718 699 722 772 0.0
20/07/2010 15:31:49 131 0.0 27.8 69 1005 686 711 699 699 680 702 751 0.0
20/07/2010 15:32:49 102 0.0 28.1 66 1005 690 723 703 703 684 707 757 0.0
20/07/2010 15:33:49 105 0.0 28.0 67 1005 688 713 701 701 683 706 755 0.0
20/07/2010 15:34:49 109 0.0 28.1 67 1005 650 663 663 663 640 662 711 0.0
20/07/2010 15:35:49 108 0.0 28.1 66 1005 679 700 691 691 672 695 744 0.0
20/07/2010 15:36:49 120 0.0 28.0 69 1005 682 707 694 694 675 696 746 0.0
20/07/2010 15:37:49 106 0.0 27.9 69 1005 667 690 678 678 659 679 729 0.0
20/07/2010 15:38:49 174 0.0 28.1 68 1005 677 720 689 689 672 694 742 0.0
20/07/2010 15:39:49 162 0.0 28.2 67 1005 670 709 681 681 661 683 732 0.0
20/07/2010 15:40:49 143 0.0 28.4 66 1005 672 714 683 683 664 686 733 0.0
20/07/2010 15:41:49 130 0.0 28.4 66 1004 670 718 680 680 660 680 732 0.0
20/07/2010 15:42:49 173 0.0 28.5 65 1005 662 713 673 673 652 674 723 0.0
20/07/2010 15:43:49 174 0.0 28.5 65 1005 660 706 670 670 649 670 720 0.0
20/07/2010 15:44:49 198 0.0 28.6 64 1005 659 711 669 669 648 670 720 0.0
20/07/2010 15:45:49 178 0.0 28.7 65 1005 658 716 667 667 646 668 718 0.0
20/07/2010 15:46:49 102 0.0 28.3 68 1005 645 699 653 653 634 654 703 0.0
20/07/2010 15:47:49 139 0.0 28.1 68 1005 650 710 659 659 639 660 708 0.0
20/07/2010 15:48:49 154 0.0 28.2 66 1005 647 705 656 656 635 656 706 0.0
20/07/2010 15:49:49 169 0.0 28.3 66 1005 641 696 650 650 626 648 696 0.0
20/07/2010 15:50:49 160 0.0 28.3 67 1005 643 705 651 651 629 650 698 0.0
20/07/2010 15:51:49 179 0.0 28.2 66 1005 637 700 646 646 623 644 693 0.0
20/07/2010 15:52:49 152 0.0 28.2 67 1005 631 687 641 641 618 638 689 0.0
20/07/2010 15:53:49 147 0.0 28.1 66 1004 631 687 639 639 615 636 686 0.0
20/07/2010 15:54:49 112 0.0 28.1 67 1004 626 678 633 633 608 629 678 0.0
20/07/2010 15:55:49 109 0.0 28.1 67 1004 619 677 625 625 602 622 671 0.0
20/07/2010 15:56:49 192 0.0 28.0 67 1004 618 681 624 624 601 621 669 0.0
20/07/2010 15:57:49 128 0.0 28.1 67 1005 614 684 619 619 596 616 666 0.0
20/07/2010 15:58:49 171 0.0 28.2 67 1004 617 690 622 622 600 620 670 0.0
20/07/2010 15:59:49 152 0.0 28.3 66 1004 615 697 620 620 598 617 667 0.0
20/07/2010 16:00:49 167 0.0 28.4 66 1004 614 698 619 619 597 616 666 0.0