2-3
## [1] -1
2/3
## [1] 0.6666667
2^3
## [1] 8
sqrt(2)
## [1] 1.414214
log(2)
## [1] 0.6931472

Question 1

log_base_5 <- log(10, base = 5)
print(log_base_5)
## [1] 1.430677
log_natural <- log(10)
print(log_natural)
## [1] 2.302585
log_base_10 <- log10(10)
print(log_base_10)
## [1] 1
BA=(29)/(112)
BA
## [1] 0.2589286
Batting_Average=round(BA,digits = 3)
Batting_Average
## [1] 0.259

Question 2

BA=(42)/(212)
BA
## [1] 0.1981132
OBP=(172+84+5)/(515+172+84+5+6)
OBP
## [1] 0.3337596
On_Base_Percentage=round(OBP,digits = 3)
On_Base_Percentage
## [1] 0.334

Question 3

OBP=(156+65+3)/(565+156+65+3+7)
OBP
## [1] 0.281407
3 == 8#
## [1] FALSE
3 != 8#
## [1] TRUE
3 <= 8#
## [1] TRUE
3>4
## [1] FALSE
FALSE | FALSE
## [1] FALSE
TRUE & FALSE 
## [1] FALSE
! FALSE # Not False
## [1] TRUE
2 < 3 | 1 == 5
## [1] TRUE

ASSIGNING VALUES TO VARIABLES

Total_Bases <- 6 + 5
Total_Bases*3
## [1] 33
ls()
## [1] "BA"                 "Batting_Average"    "log_base_10"       
## [4] "log_base_5"         "log_natural"        "OBP"               
## [7] "On_Base_Percentage" "Total_Bases"
rm(Total_Bases)
pitches_by_innings <- c(12, 15, 10, 20, 10)
pitches_by_innings
## [1] 12 15 10 20 10
strikes_by_innings <- c(9, 12, 6, 14, 9)
strikes_by_innings
## [1]  9 12  6 14  9

Question 4

runs_per_9innings <- c(3, 4, 2, 5, 3)
runs_per_9innings
## [1] 3 4 2 5 3
hits_per_9innings <- c(7, 9, 6, 10, 8)
hits_per_9innings
## [1]  7  9  6 10  8
rep(2,5)
## [1] 2 2 2 2 2
rep(1,4)
## [1] 1 1 1 1
1:5
## [1] 1 2 3 4 5
2:10
## [1]  2  3  4  5  6  7  8  9 10
seq(1, 10, by=2)
## [1] 1 3 5 7 9
seq(2,13,by=3)
## [1]  2  5  8 11
pitches_by_innings+strikes_by_innings
## [1] 21 27 16 34 19
pitches_by_innings == strikes_by_innings
## [1] FALSE FALSE FALSE FALSE FALSE
length(pitches_by_innings)
## [1] 5
min(pitches_by_innings)
## [1] 10
mean(pitches_by_innings)
## [1] 13.4
pitches_by_innings
## [1] 12 15 10 20 10
pitches_by_innings[1]
## [1] 12

Question 5

first_element <- hits_per_9innings[1]
print(first_element)
## [1] 7
pitches_by_innings[length(pitches_by_innings)]
## [1] 10

Question 6

hits_per_9innings[length(hits_per_9innings)]
## [1] 8
pitches_by_innings[c(2, 3, 4)]
## [1] 15 10 20
player_positions <- c("catcher", "pitcher", "infielders", "outfielders")

Data frames

data.frame(bonus = c(2, 3, 1),#in millions
           active_roster = c("yes", "no", "yes"),
           salary = c(1.5, 2.5, 1))#in millions
##   bonus active_roster salary
## 1     2           yes    1.5
## 2     3            no    2.5
## 3     1           yes    1.0

How to make a random sample

sample(1:10, size=5)
## [1]  5  8  9 10  4
bar <- data.frame(var1 = LETTERS[1:10], var2 = 1:10)
# Check data frame
bar
##    var1 var2
## 1     A    1
## 2     B    2
## 3     C    3
## 4     D    4
## 5     E    5
## 6     F    6
## 7     G    7
## 8     H    8
## 9     I    9
## 10    J   10
n <- 5
samplerows <- sample(1:nrow(bar), size=n)
samplerows
## [1] 10  9  3  2  8
barsample <- bar[samplerows, ]
print(barsample)
##    var1 var2
## 10    J   10
## 9     I    9
## 3     C    3
## 2     B    2
## 8     H    8
bar[sample(1:nrow(bar), n), ]
##   var1 var2
## 8    H    8
## 5    E    5
## 1    A    1
## 2    B    2
## 3    C    3

Using tables

x <- c("Yes","No","No","Yes","Yes")
table(x)
## x
##  No Yes 
##   2   3

Numerical measurements of center and spread

sals <- c(12, .4, 5, 2, 50, 8, 3, 1, 4, 0.25)
mean(sals)
## [1] 8.565
var(sals)
## [1] 225.5145
sd(sals)
## [1] 15.01714
median(sals)
## [1] 3.5
fivenum(sals)
## [1]  0.25  1.00  3.50  8.00 50.00
summary(sals)
##    Min. 1st Qu.  Median    Mean 3rd Qu.    Max. 
##   0.250   1.250   3.500   8.565   7.250  50.000

How about the mode

getMode <- function(x) {
     ux <- unique(x)
     ux[which.max(tabulate(match(x, ux)))]
}
getMode(pitches_by_innings)
## [1] 10

Question 7

most_frequent <- names(which.max(table(hits_per_9innings)))
print(most_frequent)
## [1] "6"

Question 8

game_day <- c("Saturday", "Saturday", "Sunday", "Monday", "Saturday", "Tuesday", "Sunday", "Friday", "Friday", "Monday")

survey_summary <- table(game_day)

print(survey_summary)
## game_day
##   Friday   Monday Saturday   Sunday  Tuesday 
##        2        2        3        2        1

Question 9

getMode <- function(x) {
  ux <- unique(x)
  ux[which.max(tabulate(match(x, ux)))]
}

game_day <- c("Saturday", "Saturday", "Sunday", "Monday", "Saturday", "Tuesday", "Sunday", "Friday", "Friday", "Monday")

most_frequent_day <- getMode(game_day)
print(most_frequent_day)
## [1] "Saturday"