"El poker puede ser el hobbie más rentable que hayas tenido jamás o el quebradero de cabeza más grande que puedas imaginar. En tus manos está elegir la luz o el lado oscuro de la fuerza. Se responsable y disfruta o mejor..¡disfruta! y se responsable." [Boltrok]

lunes, 8 de septiembre de 2008

Bricolaje con Holdem Manager y Excel

Ha habido gente que me ha pedido que escriba sobre como es posible llevar los datos del Holdem Manager a Excel. Este artículo se ha quedado obsoleto porque lo que explica lo puede hacer el propio Holdem Manager desde la pestaña "Players" y ahí haciendo click en el encabezado de la columna correspondiente, mostrándose los resultados en "Result Analisys". Antes, en las primeras versiones de HM no funcionaba bien porque siempre sacaba los datos de toda la base de datos sin hacer casos de los filtros. Ahora parece que lo han solucionado para mi desesperacion tras escribir todo el artículo.



De todas formas ahí va, por si alguien le puede sacar alguna utilidad.


Bueno, lo primero es obtener los datos desde Holdem Manager. No se trata de llevarnos toda la base de datos sino de llevarnos el grid de jugadores. Dentro de la pestaña “Players” tenemos unos filtros a la izquierda con los seleccionar a los jugadores regulares para asegurar una mayor calidad de la información. Cuanto mayor sea la base de datos original de Holdem Manager a nivel de manos por jugador y jugadores, más “válidos” serán los resultados obtenidos en el estudio.

Por ejemplo, buscamos los jugadores con más de 3.000 manos entre determinadas fechas y pulsamos “Run Report”:



Fig. 1

Una vez obtenidos los jugadores deseados y si pulsamos sobre el gris botón derecho del ratón aparecerá un menú como veis en la Fig.1 y seleccionamos la opción “Export grid as csv file”. Elegimos donde guardaremos el archivo y se acabó la labor con Holdem Manager.

Un archivo .csv no es más que un archivo de texto con los campos que nos interesan separados por un carácter, en nuestro caso la coma “,”. Para llevar esto a Excel debemos abrir Excel (muy importante, jajaja) y variará en función de las versiones pero todos tendremos algo así como un menú “Datos” y dentro de este “Obtener datos externos”-“Importar datos”.

Al seleccionar como origen para importar el csv, nos saldrá el asistente para importar texto. Lo más importante es que le digamos que el carácter de separación de los campos es la coma. El asistente mostrará un aspecto similar a la Fig. 2:



Fig. 2


Veis que abajo está el fichero en su formato original como un churro de texto con los campos separados por comas. Pulsamos “Siguiente” y le indicamos que ese es el carácter de separación. Ver Fig. 3:


Fig. 3


Ya veis que nos ha reconocido y separado el fichero correctamente. Finalizamos la importación y tendremos en Excel nuestro grid de Holdem Manager tal y como podeis ver en la Fig. 4:


Fig. 4

Dos consideraciones:

1) Es posible que las columnas con número no tengan formato numérico. Aseguraos de convertirlas. Un posible truco es multiplicar el valor*1.

2) Tened en cuanta incompatibilidades con el separador de miles (que sea la como o el punto en función de configuraciones) y haced las modificaciones pertinentes.

A partir de este grid base, bien formateado, lo que vamos a hacer es llevarnos a una nueva hoja de Excel la estadística o columna que queramos estudiar. Vamos a hacer el ejemplo con el VPIP pero podría ser cualquier otra.

En la nueva hoja debemos pegar la columna a estudiar VPIP y la columna bb/100 que nos dará los valores de referencia. Lo que queremos es estudiar intervalos de la estadística en cuestión y ver los valores medios de bb/100 en ese intervalo para ver cuales son los valores óptimos.

Queremos que nuestro Excel nos sirva para futuras importaciones así que lo que sería óptimo es que Excel nos recalcule automáticamente los valores de los intervalos y las bb/100 simplemente con machacar los datos de las columnas en cuestión. Todo dinámico y esas cosas.

Aquí es donde entra el concepto estadístico de percentil (percentiles, cuadriles, deciles, etc) que para no aburrir diremos que es en el que nos basaremos para definir los intervalos (los percentiles 20, 40, 60 y 80). Excel calcula estos percentiles con la función:

PERCENTIL(B:B;0,2) 0,2 para el percentil 20

Los percentiles toman valores de manera dinámica en función de los valores de la propia muestra. Siguiendo con el ejemplo (que es como mejor se acabará entendiendo aunque ahora estéis un poco liados), vamos a calcular ahora las bb/100 medias para los valores que caigan por debajo del percentil 20. Sería algo así:

Si VPIP es <> (esto es lo que nos devuelve la función PERCENTIL(B:B;0,2)) las bb/100 de la muestra son 5,88.

Este valor 5,88 se obtiene mediante la siguiente fórmula:

=(SUMA(SI($B1:$B1000>0;SI($B$1:$B$1000<=PERCENTIL( B:B;0,2);$A$1:$A$1000;0);0)))/( SUMA(SI($B$1:$B$1000>0;SI($B$1:$B$1000<=PERCENTIL( B:B;0,2);1;0);0)))

Estas son formulas matriciales en Excel (CTRL+MÁYUS+ENTRAR (o COMMAND+RETURN en un Mac al introducir la fórmula) para calcular la media estadística en base a determinados límites (los susodichos percentiles).

Para un intervalo concreto entre dos percentiles (por ejemplo el 20 y 40) la fórmula quedaría algo así como:

=(SUMA(SI($B1:$B1000>PERCENTIL(B:B;0,2);SI($B$1:$B $1000<=PERCENTIL(B:B;0,4);$A$1:$A$1000;0);0)))/( SUMA(SI($B$1:$B$1000>PERCENTIL(B:B;0,2);SI($B$1:$B $1000<=PERCENTIL(B:B;0,4);1;0);0)))

No os voy a volver locos con las fórmulas, los conceptos estadísticos, etc. Seguro que existen manera mucho mejores de hacer las fórmulas y los cálculos y gente mucho más cualificada que yo para hablar de estadística. Yo no soy ningún experto en Excel y he ido aprendiendo sobre la marcha mientras trataba de hacer este “Calculador de rangos”.

El resultado quedaría algo así como la Fig. 5:



Fig. 5


En la columna de la izquierda tenemos los datos del VPIP de la muestra.

En la columna siguiente tenemos los datos de las bb/100.

Arriba tenemos los intervalos dinámicos definidos mediante las fórmulas de percentiles y la media de bb/100 correspondiente a cada intervalo.

Hemos añadido un gráfico en forma de diagrama de barras para ver donde caen los valores óptimos en el caso de nuestra muestra. (los valores del Eje X están editados a mano para hacerlos más presentables).

Espero que os sea útil, a pesar de todo, y trabajando un poco llegueis a conclusiones interesantes. Por supuesto cualquier correción o mejora al proceso será bienvenida en los comentarios.

Si quereis descargaros el .xls de ejemplo lo teneis aquí.

HM-percentil.xls


7 comentarios:

TyCuS dijo...

buen trabajo :)

Anónimo dijo...

Genial, tenia ganas de hacerme unos facsheets en excel con todos estos datos de los jugadores de mi sala, será muy útil.
Gracias.

MrSkuda.

baran84 dijo...

muy bueno el trabajo....

Anónimo dijo...

nice post

Anónimo dijo...

Muchas gracias de nuevo, Boltrok. Tu molas! jejeje.

Unknown dijo...

Gracias. Se pueden filtrar los "player" que tengan ganancias unicamente y en base a eso analizar sus stad?

Huasckar dijo...

Excelente, me salvaste. Estaba mas perdido que en la luna. No te ni idea de lo que era un SCV.

Gracias.