# ===================================================
# PEARSON CORRELATION & SPEARMAN CORRELATION OVERVIEW
# ===================================================

# PURPOSE
# Used to test the relationship between two continuous variables.

# ==========
# HYPOTHESES
# ==========

# NULL HYPOTHESIS
# There is no relationship between Variables A and B.

# ALTERNATE HYPOTHESIS
# There is a relationship between Variables A and B.

# DIRECTIONAL ALTERNATE HYPOTHESES
# As Variable A increases, Variable B increases.
# As Variable A increases, Variable B decreases.

# .................................................................
# QUESTION
# What are the null and alternate hypotheses for your research?
# H0: There is no relation between the number of laptops purchased and the number of anti-virus licenses purchased. 
# H1: There is a relation between the number of laptops purchased and the number of anti-virus licenses purchased.
# .................................................................

# ======================
# IMPORT EXCEL FILE CODE
# ======================

# PURPOSE OF THIS CODE
# Imports your Excel dataset automatically into R Studio.
# You need to import your dataset every time you want to analyze your data in R Studio.

# INSTALL REQUIRED PACKAGE
# The package only needs to be installed once.
# The code for this task is provided below. Remove the hashtag below to convert the note into code.

#install.packages("readxl")

# LOAD THE PACKAGE
# You must always reload the package you want to use. 
# The code for this task is provided below. Remove the hashtag below to convert the note into code.

library(readxl)

# IMPORT THE EXCEL FILE INTO R STUDIO
# Download the Excel file from One Drive and save it to your desktop.
# Right-click the Excel file and click “Copy as path” from the menu.
# In R Studio, replace the example path below with your actual path.
# Replace backslashes \ with forward slashes / or double them //:
# ✘ WRONG   "C:\Users\Joseph\Desktop\mydata.xlsx"
# ✔ CORRECT "C:/Users/Joseph/Desktop/mydata.xlsx"
# ✔ CORRECT "C:\\Users\\Joseph\\Desktop\\mydata.xlsx"
# Replace "dataset" with the name of your excel data (without the .xlsx)

# An example of the code for this task is provided below.
# You can edit the code below and remove the hashtag to use the code below.

A5RQ2 <- read_excel("C:\\Users\\leena\\Desktop\\SLU\\Sem 3 Fall 1\\Week 5\\A5RQ2.xlsx")

# ======================
# DESCRIPTIVE STATISTICS
# ======================

# Calculate the mean, median, SD, and sample size for each variable.

# INSTALL THE REQUIRED PACKAGE
# Remove the hashtag in front of the code below to install the package once. 
# After installing the package, put the hashtag in front of the code again.

#install.packages("psych")

# LOAD THE PACKAGE
# Always reload the package you want to use. 

library(psych)

# CALCULATE THE DESCRIPTIVE DATA
# Replace "dataset" with the name of your excel data (without the .xlsx)
# Replace "V1" with the R code name for your first variable.
# Replace "V2" with the R code name for your second variable.

describe(A5RQ2[, c("Antivirus", "Laptop")])
##           vars   n  mean    sd median trimmed   mad min max range  skew
## Antivirus    1 122 50.18 13.36     49   49.92 12.60  15  83    68  0.15
## Laptop       2 122 40.02 12.30     39   39.93 11.86   8  68    60 -0.01
##           kurtosis   se
## Antivirus    -0.14 1.21
## Laptop       -0.32 1.11
# =========================
# VISUALLY DISPLAY THE DATA
# =========================

# CREATE A SCATTERPLOT

# PURPOSE
# A scatterplot visually shows the relationship between two continuous variables.

# INSTALL THE REQUIRED PACKAGES
# Remove the hashtags in front of the code below to install the package once. 
# After installing the packages, put the hashtag in front of the code again.

#install.packages("ggplot2")
#install.packages("ggpubr")

# LOAD THE PACKAGE
# Always reload the package you want to use. 

library(ggplot2)
## 
## Attaching package: 'ggplot2'
## The following objects are masked from 'package:psych':
## 
##     %+%, alpha
library(ggpubr)

# CREATE THE SCATTERPLOT
# Replace "dataset" with the name of your excel data (without the .xlsx)
# Replace "V1" with the R code name for your first variable.
# Replace "V2" with the R code name for your second variable.
# Replace "pearson" with "spearman" if you are using the spearman correlation.

ggscatter(A5RQ2, x = "Antivirus", y = "Laptop",
          add = "reg.line",
          conf.int = TRUE,
          cor.coef = TRUE,
          cor.method = "pearson",
          xlab = "Antivirus", ylab = "Laptop")

# ........................................................
# QUESTION
# Answer the questions below as a comment within the R script:
# Is the relationship positive (line pointing up), negative (line pointing down), or is there no relationship (line is flat)?
# ........................................................


# ===============================================
# CHECK THE NORMALITY OF THE CONTINUOUS VARIABLES
# ===============================================

# OVERVIEW
# Two methods will be used to check the normality of the continuous variables.
# First, you will create histograms to visually inspect the normality of the variables.
# Next, you will conduct a test called the Shapiro-Wilk test to inspect the normality of the variables.
# It is important to know whether or not the data is normal to determine which inferential test should be used.


# CREATE A HISTOGRAM FOR EACH CONTINUOUS VARIABLE
# A histogram is used to visually check if the data is normally distributed.

# CREATE A HISTOGRAM FOR EACH CONTINUOUS VARIABLE
# Replace "dataset" with the name of your excel data (without the .xlsx)
# Replace "V1" with the R code name for your first variable.
# Replace "V2" with the R code name for your second variable.

hist(A5RQ2$Antivirus,
     main = "Histogram of V1",
     xlab = "Value",
     ylab = "Frequency",
     col = "lightblue",
     border = "black",
     breaks = 20)

hist(A5RQ2$Laptop,
     main = "Histogram of V2",
     xlab = "Value",
     ylab = "Frequency",
     col = "lightgreen",
     border = "black",
     breaks = 20)

# ........................................................
# QUESTION
# Answer the questions below as comments within the R script:
# Q1) Check the SKEWNESS of the VARIABLE 1 histogram. In your opinion, does the histogram look symmetrical, positively skewed, or negatively skewed?
# Q2) Check the KURTOSIS of the VARIABLE 1 histogram. In your opinion, does the histogram look too flat, too tall, or does it have a proper bell curve?
# Q3) Check the SKEWNESS of the VARIABLE 2 histogram. In your opinion, does the histogram look symmetrical, positively skewed, or negatively skewed?
# Q4) Check the KUROTSIS of the VARIABLE 2 histogram. In your opinion, does the histogram look too flat, too tall, or does it have a proper bell curve?
# ........................................................

# PURPOSE
# Use a statistical test to check the normality of the continuous variables.
# The Shapiro-Wilk Test is a test that checks skewness and kurtosis at the same time.
# The test is checking "Is this variable the SAME as normal data (null hypothesis) or DIFFERENT from normal data (alternate hypothesis)?"
# For this test, if p is GREATER than .05 (p > .05), the data is NORMAL.
# If p is LESS than .05 (p < .05), the data is NOT normal.

# CONDUCT THE SHAPIRO-WILK TEST
# Replace "dataset" with the name of your excel data (without the .xlsx)
# Replace "V1" with the R code name for your first variable.
# Replace "V2" with the R code name for your second variable.

shapiro.test(A5RQ2$Antivirus)
## 
##  Shapiro-Wilk normality test
## 
## data:  A5RQ2$Antivirus
## W = 0.99419, p-value = 0.8981
shapiro.test(A5RQ2$Laptop)
## 
##  Shapiro-Wilk normality test
## 
## data:  A5RQ2$Laptop
## W = 0.99362, p-value = 0.8559
# .........................................................
# QUESTION
# Answer the questions below as a comment within the R script:
# Was the data normally distributed for Variable 1?
# Was the data normally distributed for Variable 2?
# .........................................................

# If the data is normal for both variables, continue with the Pearson Correlation test.
# If one or both of variables are NOT normal, change to the Spearman Correlation test.

# ================================================
# PEARSON CORRELATION OR SPEARMAN CORRELATION TEST
# ================================================

# PURPOSE
# Check if the means of the two groups are different.

# CONDUCT THE PEARSON CORRELATION OR SPEARMAN CORRELATION
# Replace "dataset" with the name of your excel data (without the .xlsx)
# Replace "V1" with the R code name for your first variable.
# Replace "V2" with the R code name for your second variable.
# Replace "pearson" with "spearman" if you are using the spearman correlation.

cor.test(A5RQ2$Antivirus, A5RQ2$Laptop, method = "pearson")
## 
##  Pearson's product-moment correlation
## 
## data:  A5RQ2$Antivirus and A5RQ2$Laptop
## t = 25.16, df = 120, p-value < 2.2e-16
## alternative hypothesis: true correlation is not equal to 0
## 95 percent confidence interval:
##  0.8830253 0.9412249
## sample estimates:
##       cor 
## 0.9168679
# DETERMINE STATISTICAL SIGNIFICANCE
# If results were statistically significant (p < .05), continue to effect size section below.
# If results were NOT statistically significant (p > .05), skip to reporting section below.
# NOTE: Getting results that are not statistically significant does NOT mean you switch to Spearman Correlation.
# The Spearman Correlation is only for abnormally distributed data — not based on outcome significance.

# ===============================================
# EFFECT SIZE FOR PEARSON & SPEARMAN CORFRELATION
# ===============================================

# If results were statistically significant, then determine how the variables are related and how strong the relationship is.

# 1) REVIEW THE CORRECT CORRELATION TEST
# Ans: The cor value is 0.9168679, the data is not statistically dependent, So if the number of antivirus license sold and number of laptops sold are not related to each other.

# ........................................................

# 1) WRITE THE REPORT 
#    Answer the questions below as a comment within the R script:
#    Q1) What is the direction of the effect?  
#        "Direction" explains the relationship between the variables.
#    Ans: The correlation was positive and strong, r(120) = 0.9168, p < .001.
#
#     Q2) What is the size of the effect? 
#         Ranges from 0 (no relationship) to 1.00 (perfect relationship).
#    Ans: The size of the effect is 0.9168679


# ========================================================
#     >> WRITTEN REPORT FOR PEARSON CORRELATION <<
# ========================================================

# 1) REVIEW YOUR OUTPUT
#    Collect the information below from your output:
#    1) The name of the inferential test used (Pearson Correlation)
#    2) The names of the two variables you analyzed (their proper names, not their R code names).
#Ans. Antivirus, laptop
#    3) The total sample size (labeled as "n").
#Ans. N=122
#    4) Whether the inferential test results were statistically significant (p < .05) or not (p > .05)
#Ans:P>0.5
#    5) The mean and SD for each variable (rounded to two places after the decimal)
#Ans: Mean = 50.8, SD = 13.36
#     Mean = 40.02, SD = 12.30
#    6) The direction and size of the correlation.
#Ans: The correlation was positive and strong, r(120) = 0.9168, p < .001.
#    7) Degrees of freedom (labeled as "df")
#Ans: DF = 120
#    8) r-value (labeled as "sample estimate: cor" in output)
#Ans: r =0.9168
#    9) p-value (exact value rounded to two places after the decimal)
#Ans : p = 2.26 epower-16=>p<0.001

# Write a paragraph summarizing your findings.

# ........................................................

# A Pearson correlation was conducted to examine the relationship between the number of laptops purchased and the number of anti-virus licenses purchased (n =122). There was a statistically not significant correlation between number of antivirus software sold (M = 50.8, SD = 13.36) and number of laptops sold (M = 40.02, SD = 12.30). The correlation was positive and strong, r(120) = 0.9168, p < .001.There is no relationship between the number of laptops purchased and the number of antivirus licenses purchased.