Make a new version of a Statistic

PokerTracker 3 version 3.10
October 25, 2013
  • Introduction

    This tutorial explains how to make a new version of an existing statistic by duplicating it and changing the copy.

    When making a copy of a statistic we first have to make copies of any columns that the stat uses. The columns are where most of the work is done, so if you are given an example of how to change a stat the expressions you will be given will probably be the new column expressions you need to use.

    These expressions will usually be an adaption of the column expressions from the stat you are going to copy.
    You should always give your new columns new names rather than overwriting the existing columns - see Naming conventions.

    I will give you a walkthrough with screenshots to illustrate the process, but first here are a few examples.

  • Example - positional version of a stat

    To make a version of a stat for a single position you need to add a check for the player's position to the column expressions.
    For instance, to make a version of cnt_p_3bet (which counts the number of times the player 3 bets preflop) for the button position only you would change the column name and expression from:

    cnt_p_3bet =

    sum(if[holdem_hand_player_statistics.flg_p_3bet, 1, 0])

    ..to:
    cnt_p_3bet_btn =

    sum(if[holdem_hand_player_statistics.flg_p_3bet AND holdem_hand_player_statistics.position = 0, 1, 0])

    See below for the full walkthrough of this stat update.

    Once you have created your new columns you can duplicate the existing Statistic and change the copy's Value Expression to use the new columns. For instance you might create a new stat based on:

    3Bet Preflop =

    (cnt_p_3bet / cnt_p_3bet_opp) * 100

    ..udpated to this:

    3Bet Preflop Button =

    (cnt_p_3bet_btn / cnt_p_3bet_btn_opp) * 100

  • Example - changing the street

    To adapt a column to count things from a different street you would change from this:

    cnt_p_3bet_btn =

    sum(if[holdem_hand_player_statistics.flg_p_3bet AND holdem_hand_player_statistics.position = 0, 1, 0])

    ..to:

    cnt_f_3bet =

    sum(if[holdem_hand_player_statistics.flg_f_3bet AND holdem_hand_player_statistics.position = 0, 1, 0])

    Sometimes a column would need more changes to work for another street, for instance if actions on previous streets affect the count.

  • Walkthrough

    As an example I'll show you how to create a positional version of the stat "3Bet Preflop" for the button position.

    Open the Configure Statistics window from the PT3 menu Configure > Configure Stats and select Holdem Cash Player Statistics on the Sections tab.
    If you want to adapt an Omaha or Tournament stat then select the appropriate "Player Statistics" section.



     

    Click the Statistics tab and select "3Bet Preflop" from the list of Existing Stats.

    The Value Expression field on the right shows which Columns the stat uses.



     

    For the stat "3Bet Preflop" these are "cnt_p_3bet" and "cnt_p_3bet_opp".
    These columns count how often the player 3-bet preflop and the number of opportunities they had to 3-bet preflop. To build a version of this stat for the button position only we need to make new versions of those columns which we can then use in a new version of this stat.

    Make a note of the column names and then click the Columns tab and select the first column ("cnt_p_3bet") from the list of Existing Columns.
    To make a copy of the column click the Dup ("Duplicate") button.



     

    We now have a copy of the column which we can change to fit our needs.
    Change the Name to "cnt_p_3bet_btn". (additions in bold)

    In this case we want to count only the times that the player was on the button (position 0) when they 3-bet, so we change the Expression to this:
    sum(if[holdem_hand_player_statistics.flg_p_3bet AND holdem_hand_player_statistics.position = 0, 1, 0])

    Finally update the Description:
    Number of times player 3 bet preflop from the button.



     

    Tip! Positions are defined by the number of seats away from the button, so the button is position 0 and the cutoff is position 1, etc. The big blind is always position 8, and the small blind position 9, regardless of table size so that you can easily identify the blind positions.

    We now need to repeat this process for the other column: "cnt_p_3bet_opp". Select and Duplicate the column then make the changes like this:

    Name = cnt_p_3bet_btn_opp

    Expression = sum(if[holdem_hand_player_statistics.flg_p_3bet_opp AND holdem_hand_player_statistics.position = 0, 1, 0])
    Description = Number of times player had the opportunity to 3 bet preflop from the button.



     

    Now that we have our two new columns we can make our new stat, so click the Statistics tab again - "3Bet Preflop" should still be selected (if not then reselect it) - and then click the Dup button to make a copy of it.

    We need to change the Name of the new stat ("3Bet Preflop Btn") and Description ("Preflop 3Bet Percentage from the button") and then alter the Value Expression to use the new columns we just created:
    (cnt_p_3bet_btn / cnt_p_3bet_btn) * 100



     

    We should also update the Format tab - the only change needed here is in the Title field, but if the Format Expression used column names then that would need to be changed too - and the Categories tab - here we just add the Position category.