Introduction
Counting values is very useful and there is functionality within PhixFlow to help us achieve this.
Simple Count
We can generate counts of particular attributes using a View. This means we do not need to edit the source data only how is is displayed.
Example
We have a set of company details and we want to see how many time a company name appears in the list.
Solution
- Open the properties of the table holding the company data.
- Create a new view
- Set the Name e.g. Company Counter.
- Set the Display Type to
Grid
. - Sort order and Filters are Optional for our example. See View for more details.
- In View Attributes click Show or Hide Attributes
- From the popup box that appears, drag in the name of the company into the View Attributes section:
- Double click this View Attribute to open its properties.
- Change the Name to Count or something useful. It must be changed.
- Set Aggregate Function to
Count
. - Save all your changes.
- This will produce a count based on the other attributes in the view.
- Now add the name of the company to the view.
- Save all your changes
- In the Table right-click the view we just created and select View Chart. A view of the data will display a count of all the companies.
There are other useful Aggregate Functions available that we can use to generate other metrics n our view, see View Attribute for more detail on these.
Bespoke Counts
Where we need to generate more complex counts such as the total sum of invoices by year, we need to create additional attributes to hold the information that will be aggregated on.
Example
If we have invoice information:
From this information we would like to generate the sum of all invoices by year
Solution
- Create a new attribute on the table containing the Invoice information.
- Name the attribute
Year
. - Set Type to
Integer
. - Set the expression to:
- dateGet(_out.InvoiceDate, _YEAR)
- This statement will extract a year from a date attribute, see dateGet.
- Save your changes.
- Name the attribute
- Rerun Analysis on your Table and the new attribute will be populated.
- Create a new View on your table
- Set Name to
Invoice by Year
or something suitable. - Set Display Type to
Grid
. - In View Attributes click Show or Hide Attributes
- Add in the attribute that contains the invoice amount and the new Year attribute.
- Double click the Amount attribute to open its properties and set the Aggregate Function to
Sum
. - This will sum all the amounts by year.
- Double click the Amount attribute to open its properties and set the Aggregate Function to
- Save your changes.
- Set Name to
- In the Table right-click the view we just created and select View Chart.
It can often be useful to add a new integer attribute with the value 1 to all records coming in, this facilitates the ability to quickly get sum totals based on other fields. For example the number of invoices by year or number of people with the surname "Smith".
More Information
For more information on presenting counts and stats see Understanding Data Views.