Pearson Regression
There are few, if any, applications that don't require some form of cross-disciplinary knowledge in order to implement useful functionality for a user. In the case of an app for the medical profession it might be domain expertise in biology or pharmacology. A paint manufacturer or a crop science business might rely on apps with an intimate knowledge of chemistry. And, a payroll application will certainly incorporate HR and accounting concepts.
Regardless of the industry segment an app is developed for one cross domain expertise in common with them all is mathematics. As an application developer you don't have to be a mathematician, but it's useful to have an understanding of how to apply mathematical concepts to the problems you are trying to solve.
The objective of this app is to apply the Pearson Correlation Coefficient against two sets of data to provide the user with the degree to which they may or may not be related. For example, given a set of temperatures and another set of car prices this would let the user test whether or not they are related (spoiler alert: they are unrelated!).
Constraints
- The Developer must program all calculations without relying on a package.
User Stories
- User can see an input panel with two input fields allowing entry of
x
andy
coordinates, and 'Add' and 'Calculate' buttons. - User can enter numbers into these boxes where
x
andy
are observations from the two data sets. - User can click the 'Add' button to add the
x
andy
to a tabular output area listing the pairs of observations. - User can see and error message if either of the two input fields are empty or do not contain valid real numbers.
- User can see the 'Calculate' button is disabled until errors have been corrected.
- User can click the 'Calculate' button to perform the regression analysis and to display its results.
- User can see results of the calculation which include:
- Arithmetic means for both the
x
andy
observations - Standard deviations for both the
x
andy
observations - Pearson correlation coefficient with one of the following interpretations:
- No correlation
- Neutral
- Some correlation
- Arithmetic means for both the
Bonus features
- User can see a scatter plot of the observations
- User can upload observations from a file on the local machine.
- User can see a regression line overlaying the scatter plot