Tools for Analysing and Visualising Viva Insights Data
Internal function for plotting the hourly activity patterns.
Distribution of After-hours Collaboration Hours as a 100% stacked bar
Distribution of After-hours Collaboration Hours (Fizzy Drink plot)
After-hours Collaboration Time Trend - Line Chart
Rank groups with high After-Hours Collaboration Hours
Summary of After-Hours Collaboration Hours
After-Hours Time Trend
Anonymise a categorical variable by replacing values
Calculate Weight of Evidence (WOE) and Information Value (IV) between ...
Convert "CamelCase" to "Camel Case"
Generate a Capacity report in HTML
Check whether a data frame contains all the required variable
Check a query to ensure that it is suitable for analysis
Generate a Coaching report in HTML
Collaboration - Stacked Area Plot
Distribution of Collaboration Hours as a 100% stacked bar
Distribution of Collaboration Hours (Fizzy Drink plot)
Collaboration Time Trend - Line Chart
Collaboration Ranking
Generate a Collaboration Report in HTML
Collaboration Summary
Collaboration Time Trend
Combine signals from the Hourly Collaboration query
Add comma separator for thousands
Generate a Connectivity report in HTML
Copy a data frame to clipboard for pasting in Excel
Mean Bar Plot for any metric
Create a bar chart without aggregation for any metric
Box Plot for any metric
Create a bubble plot with two selected Viva Insights metrics (General ...
Create a density plot for any metric
Horizontal 100 percent stacked bar plot for any metric
Create interactive tables in HTML with 'download' buttons.
Fizzy Drink / Jittered Scatter Plot for any metric
Create a histogram plot for any metric
Create an incidence analysis reflecting proportion of population scori...
Estimate an effect of intervention on every Viva Insights metric in in...
Calculate Information Value for a selected outcome variable
Time Trend - Line Chart for any metric
Create a line chart without aggregation for any metric
Period comparison scatter plot for any two metrics
Rank all groups across HR attributes on a selected Viva Insights metri...
Create combination pairs of HR variables and run 'create_rank()'
Create a sankey chart from a two-column count table
Export 'wpa' outputs to CSV, clipboard, or save as images
Create a Scatter plot with two selected Viva Insights metrics (General...
Horizontal stacked bar plot for any metric
Create a line chart that tracks metrics over time with a 4-week rollin...
Heat mapped horizontal bar plot over time for any metric
Convert a numeric variable for hours into categorical
Distribution of Email Hours as a 100% stacked bar
Distribution of Email Hours (Fizzy Drink plot)
Email Time Trend - Line Chart
Email Hours Ranking
Email Summary
Email Hours Time Trend
Distribution of External Collaboration Hours as a 100% stacked bar
Distribution of External Collaboration Hours (Fizzy Drink plot)
External Collaboration Hours Time Trend - Line Chart
Plot External Network Breadth and Size as a scatter plot
Rank groups with high External Collaboration Hours
External Collaboration Summary
Extract date period
Extract HR attribute variables
Flag unusual high collaboration hours to after-hours collaboration hou...
Flag Persons with unusually high Email Hours to Emails Sent ratio
Warn for extreme values by checking against a threshold
Flag unusual outlook time settings for work day start and end time
Compute a Flexibility Index based on the Hourly Collaboration Query
Generate HTML report with list inputs
Plot WOE graphs with an IV object
Generate HTML report based on existing RMarkdown documents
Extract Residuals from ARIMA, VAR, or any Simulated Fitted Time Series...
Generate a vector of n
contiguous colours, as a red-yellow-green pal...
Employee count over time
Identify date frequency based on a series of dates
Create a count of distinct people in a specified HR variable
Create count of distinct fields and percentage of employees with missi...
Track count of distinct people over time in a specified HR variable
Identify employees who have churned from the dataset
Identify Holiday Weeks based on outliers
Identify Inactive Weeks
Identify Non-Knowledge workers in a Person Query using Collaboration H...
Identify metric outliers over a date interval
Identify groups under privacy threshold
Identify the query type of the passed data frame
Identify shifts based on outlook time settings for work day start and ...
Identify shifts based on binary activity
Tenure calculation based on different input dates, returns data summar...
Read a Workplace Analytics query in '.csv' using and create a '.fst' f...
Import a Workplace Analytics Query
Plot Internal Network Breadth and Size as a scatter plot
Identify whether string is a date format
Identify the WPA metrics that have the biggest change between two peri...
Generate a Information Value HTML Report
Jitter metrics in a data frame
Run a summary of Key Metrics from the Standard Person Query data
Run a summary of Key Metrics without aggregation
Ljung and Box Portmanteau Test
Read preamble
Calculate Weight of Evidence (WOE) and Information Value (IV) between ...
Max-Min Scaling Function
Distribution of Meeting Hours as a 100% stacked bar
Extract top low-engagement meetings from the Meeting Query
Uncover HR attributes which best represent a population for a Person t...
Distribution of Meeting Hours (Fizzy Drink plot)
Meeting Time Trend - Line Chart
Run a meeting habits / meeting quality analysis
Meeting Hours Ranking
Produce a skim summary of meeting hours
Create a network plot with the group-to-group query
Perform network analysis with the person-to-person query
Meeting Summary
Generate a Meeting Text Mining report in HTML
Meeting Hours Time Trend
Distribution of Meeting Types by number of Attendees and Duration
Meeting Type Distribution (Ways of Working Assessment Query)
Meeting Type Distribution (Meeting Query)
Create a summary bar chart of the proportion of Meeting Hours spent in...
Manager meeting coattendance distribution
Manager Relationship 2x2 Matrix
Summarise node centrality statistics with an igraph object
Distribution of Manager 1:1 Time as a 100% stacked bar
Distribution of Manager 1:1 Time (Fizzy Drink plot)
Frequency of Manager 1:1 Meetings as bar or 100% stacked bar chart
Manager 1:1 Time Trend - Line Chart
Manager 1:1 Time Ranking
Manager 1:1 Time Summary
Manager 1:1 Time Trend
Calculate the p-value of the null hypothesis that two outcomes are fro...
Simulate a person-to-person query using a Watts-Strogatz model
Create the two-digit zero-padded format
Perform a pairwise count of words by id
Plot the distribution of percentage change between periods of a Viva I...
Create hierarchical clusters of selected metrics using a Person query
Pipe operator
Plot a Sample of Working Patterns using Flexibility Index output
Remove outliers from a person query across time
Convert rgb to HEX code
Standardise variable names to a Standard Person Query
Create a new logical variable that classifies meetings by patterns in ...
Count top words in subject lines grouped by a custom attribute
Scan meeting subject and highlight items for review
Generate Meeting Text Mining report in HTML for Common Exclusion Terms
Main theme for 'wpa' visualisations
Basic theme for 'wpa' visualisations
Clean subject line text prior to analysis
Analyse word co-occurrence in subject lines and return a network plot
Perform a Word or Ngram Frequency Analysis and return a Circular Bar P...
Generate a wordcloud with meeting subject lines
Row-bind an identical data frame for computing grouped totals
Fabricate a 'Total' HR variable
Reorder a value to the top of the summary table
Sankey chart of organizational movement between HR attributes and miss...
Generate a time stamp
Replace underscore with space
Generate a Data Validation report in HTML
Generate a Wellbeing Report in HTML
Distribution of Work Week Span as a 100% stacked bar
Distribution of Work Week Span (Fizzy Drink plot)
Workloads Time Trend - Line Chart
Rank all groups across HR attributes for Work Week Span
Work Week Span Summary
Work Week Span Time Trend
Create an area plot of emails and IMs by hour of the day
Classify working pattern personas using a rule based algorithm
Classify working pattern week archetypes using a rule-based algorithm,...
Classify working pattern personas using a rule based algorithm, using ...
Create a hierarchical clustering of email or IMs by hour of day
Create a rank table of working patterns
Generate a report on working patterns in HTML
Add a character at the start and end of a character string
Wrap text based on character threshold
Opinionated functions that enable easier and faster analysis of Viva Insights data. There are three main types of functions in 'wpa': (i) Standard functions create a 'ggplot' visual or a summary table based on a specific Viva Insights metric; (2) Report Generation functions generate HTML reports on a specific analysis area, e.g. Collaboration; (3) Other miscellaneous functions cover more specific applications (e.g. Subject Line text mining) of Viva Insights data. This package adheres to 'tidyverse' principles and works well with the pipe syntax. 'wpa' is built with the beginner-to-intermediate R users in mind, and is optimised for simplicity.
Useful links