Question 5
Consider the following vectors representing the number of field goals
made and attempted by a basketball player in five games:
Field Goals Made: c(18, 7, 6, 9, 10,13) Field Goals Attempted: c(36,
23, 12, 18, 24,22)
Calculate the field goal percentage for each game and select the
correct average field goal percentage for the five games.
field_goals_made <- c(18, 7, 6, 9, 10,13)
field_goals_attempted <- c(36, 23, 12, 18, 24,22)
# Calculate the field goal percentage
fg_percentage <- (field_goals_made / field_goals_attempted) * 100
round(fg_percentage, 2)
[1] 50.00 30.43 50.00 50.00 41.67 59.09
#Average field goal percentage for the all six games
mean(fg_percentage)
[1] 46.86539
#Restrict to the first five games
fgm_five <- field_goals_made[1:5]
fga_five <- field_goals_attempted[1:5]
# Field goal percentage for each of the five games
fg_percentage_five <- (fgm_five / fga_five) * 100
round(fg_percentage_five, 2)
[1] 50.00 30.43 50.00 50.00 41.67
# Average field goal percentage for the five games
mean(fg_percentage_five)
[1] 44.42029
Results: Note that there are six games given not
five. All six games - Average field goal percentage: 46.87% First five
games - Average field goal percentage: 44.42%
Question 6
Consider the following vectors in R representing the number of
three-pointers made (3PM) and attempted (3PA) by a basketball player
over a seven-game span:
Three-Pointers Made: c(3, 5, 10, 6, 3, 7, 1)
Three-Pointers Attempted: c(9, 10, 18, 12, 11, 12, 11)
Calculate both the average of the individual per-game three-point
percentages and the overall (cumulative) three-point shooting percentage
across all seven games. Submit your code and knitted R HTML file or
RPubs link as instructed.
#Three-Pointers Made:
three_made<-c(3, 5, 10, 6, 3, 7, 1)
#Three-Pointers Attempted:
three_attempted<-c(9, 10, 18, 12, 11, 12, 11)
#Per-game 3PM percentage
pct_per_game <- (three_made / three_attempted) * 100
round(pct_per_game, 2)
[1] 33.33 50.00 55.56 50.00 27.27 58.33 9.09
#Average of individual per-game percentage
mean(pct_per_game)
[1] 40.51227
# Overall cumulative 3P percentage
sum(three_made)
[1] 35
sum(three_attempted)
[1] 83
(sum(three_made) / sum(three_attempted)) * 100
[1] 42.16867
Results: Average of Individual per-game percentages:
40.51 Total Made: 35 | Total attempted: 83 Overall (cumulative)
percentage: 42.17%
Question 7
Consider the following dataset representing the performance of
baseball players in a season. It includes the following variables:
PlayerID, Hits, At-Bats, Home Runs (HR), Walks (BB), and Strikeouts
(SO).
PlayerID Hits At-Bats HR BB SO
1 112 400 25 50 60
2 124 450 22 60 65
3 121 380 8 19 67
4 106 500 20 150 92
5 140 402 11 55 70
Compute the On-Base Percentage (OBP) for each player and select the
player with the highest OBP. Submit your code and knitted R HTML file or
RPubs link as instructed.
(Formula: OBP = (Hits + Walks) / (At-Bats + Walks))
# On-Base Percentage (OBP)
PlayerID <- c(1, 2, 3, 4, 5)
Hits <- c(112, 124, 121, 106, 140)
AtBats <- c(400, 450, 380, 500, 402)
HR <- c(25, 22, 8, 20, 11)
BB <- c(50, 60, 19, 150, 55)
SO <- c(60, 65, 67, 92, 70)
baseball <- data.frame(PlayerID, Hits, AtBats, HR, BB, SO)
# OBP = (Hits + Walks) / (At-Bats + Walks)
baseball$OBP <- round((baseball$Hits + baseball$BB) / (baseball$AtBats + baseball$BB), 4)
# View the results
baseball[, c("PlayerID", "Hits", "AtBats", "BB", "OBP")]
# Player with the highest OBP
baseball$PlayerID[which.max(baseball$OBP)]
[1] 5
max(baseball$OBP)
[1] 0.4267
Results The player with the highest OBP is player 5
at 0.4267
LS0tCnRpdGxlOiAiRXhhbSAyIC0gUXVlc3Rpb25zIDUsNiw3IgpvdXRwdXQ6IGh0bWxfbm90ZWJvb2sKLS0tCgojIFF1ZXN0aW9uIDUKCkNvbnNpZGVyIHRoZSBmb2xsb3dpbmcgdmVjdG9ycyByZXByZXNlbnRpbmcgdGhlIG51bWJlciBvZiBmaWVsZCBnb2FscyBtYWRlIGFuZCBhdHRlbXB0ZWQgYnkgYSBiYXNrZXRiYWxsIHBsYXllciBpbiBmaXZlIGdhbWVzOgoKRmllbGQgR29hbHMgTWFkZTogYygxOCwgNywgNiwgOSwgMTAsMTMpIEZpZWxkIEdvYWxzIEF0dGVtcHRlZDogYygzNiwgMjMsIDEyLCAxOCwgMjQsMjIpCgpDYWxjdWxhdGUgdGhlIGZpZWxkIGdvYWwgcGVyY2VudGFnZSBmb3IgZWFjaCBnYW1lIGFuZCBzZWxlY3QgdGhlIGNvcnJlY3QgYXZlcmFnZSBmaWVsZCBnb2FsIHBlcmNlbnRhZ2UgZm9yIHRoZSBmaXZlIGdhbWVzLgoKYGBge3J9CmZpZWxkX2dvYWxzX21hZGUgPC0gYygxOCwgNywgNiwgOSwgMTAsMTMpCmZpZWxkX2dvYWxzX2F0dGVtcHRlZCA8LSBjKDM2LCAyMywgMTIsIDE4LCAyNCwyMikKCiMgQ2FsY3VsYXRlIHRoZSBmaWVsZCBnb2FsIHBlcmNlbnRhZ2UKZmdfcGVyY2VudGFnZSA8LSAoZmllbGRfZ29hbHNfbWFkZSAvIGZpZWxkX2dvYWxzX2F0dGVtcHRlZCkgKiAxMDAKcm91bmQoZmdfcGVyY2VudGFnZSwgMikKCiNBdmVyYWdlIGZpZWxkIGdvYWwgcGVyY2VudGFnZSBmb3IgdGhlIGFsbCBzaXggZ2FtZXMKbWVhbihmZ19wZXJjZW50YWdlKQoKI1Jlc3RyaWN0IHRvIHRoZSBmaXJzdCBmaXZlIGdhbWVzCmZnbV9maXZlIDwtIGZpZWxkX2dvYWxzX21hZGVbMTo1XQpmZ2FfZml2ZSA8LSBmaWVsZF9nb2Fsc19hdHRlbXB0ZWRbMTo1XQoKIyBGaWVsZCBnb2FsIHBlcmNlbnRhZ2UgZm9yIGVhY2ggb2YgdGhlIGZpdmUgZ2FtZXMKZmdfcGVyY2VudGFnZV9maXZlIDwtIChmZ21fZml2ZSAvIGZnYV9maXZlKSAqIDEwMApyb3VuZChmZ19wZXJjZW50YWdlX2ZpdmUsIDIpCgojIEF2ZXJhZ2UgZmllbGQgZ29hbCBwZXJjZW50YWdlIGZvciB0aGUgZml2ZSBnYW1lcwptZWFuKGZnX3BlcmNlbnRhZ2VfZml2ZSkKCmBgYAoKKipSZXN1bHRzOioqCk5vdGUgdGhhdCB0aGVyZSBhcmUgc2l4IGdhbWVzIGdpdmVuIG5vdCBmaXZlLgpBbGwgc2l4IGdhbWVzIC0gQXZlcmFnZSBmaWVsZCBnb2FsIHBlcmNlbnRhZ2U6IDQ2Ljg3JQpGaXJzdCBmaXZlIGdhbWVzIC0gQXZlcmFnZSBmaWVsZCBnb2FsIHBlcmNlbnRhZ2U6IDQ0LjQyJQoKCgojIFF1ZXN0aW9uIDYKCkNvbnNpZGVyIHRoZSBmb2xsb3dpbmcgdmVjdG9ycyBpbiBSIHJlcHJlc2VudGluZyB0aGUgbnVtYmVyIG9mIHRocmVlLXBvaW50ZXJzIG1hZGUgKDNQTSkgYW5kIGF0dGVtcHRlZCAoM1BBKSBieSBhIGJhc2tldGJhbGwgcGxheWVyIG92ZXIgYSBzZXZlbi1nYW1lIHNwYW46CgpUaHJlZS1Qb2ludGVycyBNYWRlOiBjKDMsIDUsIDEwLCA2LCAzLCA3LCAxKQoKVGhyZWUtUG9pbnRlcnMgQXR0ZW1wdGVkOiBjKDksIDEwLCAxOCwgMTIsIDExLCAxMiwgMTEpCgpDYWxjdWxhdGUgYm90aCB0aGUgYXZlcmFnZSBvZiB0aGUgaW5kaXZpZHVhbCBwZXItZ2FtZSB0aHJlZS1wb2ludCBwZXJjZW50YWdlcyBhbmQgdGhlIG92ZXJhbGwgKGN1bXVsYXRpdmUpIHRocmVlLXBvaW50IHNob290aW5nIHBlcmNlbnRhZ2UgYWNyb3NzIGFsbCBzZXZlbiBnYW1lcy4gU3VibWl0IHlvdXIgY29kZSBhbmQga25pdHRlZCBSIEhUTUwgZmlsZSBvciBSUHVicyBsaW5rIGFzIGluc3RydWN0ZWQuCgpgYGB7cn0KI1RocmVlLVBvaW50ZXJzIE1hZGU6IAp0aHJlZV9tYWRlPC1jKDMsIDUsIDEwLCA2LCAzLCA3LCAxKSAKI1RocmVlLVBvaW50ZXJzIEF0dGVtcHRlZDogCnRocmVlX2F0dGVtcHRlZDwtYyg5LCAxMCwgMTgsIDEyLCAxMSwgMTIsIDExKQoKI1Blci1nYW1lIDNQTSBwZXJjZW50YWdlCnBjdF9wZXJfZ2FtZSA8LSAodGhyZWVfbWFkZSAvIHRocmVlX2F0dGVtcHRlZCkgKiAxMDAKcm91bmQocGN0X3Blcl9nYW1lLCAyKQoKI0F2ZXJhZ2Ugb2YgaW5kaXZpZHVhbCBwZXItZ2FtZSBwZXJjZW50YWdlCm1lYW4ocGN0X3Blcl9nYW1lKQoKIyBPdmVyYWxsIGN1bXVsYXRpdmUgM1AgcGVyY2VudGFnZQpzdW0odGhyZWVfbWFkZSkKc3VtKHRocmVlX2F0dGVtcHRlZCkKKHN1bSh0aHJlZV9tYWRlKSAvIHN1bSh0aHJlZV9hdHRlbXB0ZWQpKSAqIDEwMApgYGAKCioqUmVzdWx0czoqKgpBdmVyYWdlIG9mIEluZGl2aWR1YWwgcGVyLWdhbWUgcGVyY2VudGFnZXM6IDQwLjUxClRvdGFsIE1hZGU6IDM1IHwgVG90YWwgYXR0ZW1wdGVkOiA4MwpPdmVyYWxsIChjdW11bGF0aXZlKSBwZXJjZW50YWdlOiA0Mi4xNyUKCgojIFF1ZXN0aW9uIDcKCkNvbnNpZGVyIHRoZSBmb2xsb3dpbmcgZGF0YXNldCByZXByZXNlbnRpbmcgdGhlIHBlcmZvcm1hbmNlIG9mIGJhc2ViYWxsIHBsYXllcnMgaW4gYSBzZWFzb24uIEl0IGluY2x1ZGVzIHRoZSBmb2xsb3dpbmcgdmFyaWFibGVzOiBQbGF5ZXJJRCwgSGl0cywgQXQtQmF0cywgSG9tZSBSdW5zIChIUiksIFdhbGtzIChCQiksIGFuZCBTdHJpa2VvdXRzIChTTykuCgpQbGF5ZXJJRCAgICAgSGl0cyAgICBBdC1CYXRzICAgICAgICBIUiAgICAgICAgQkIgICAgIFNPCgogICAgMSAgICAgICAgICAgICAxMTIgICAgICAgNDAwICAgICAgICAgICAyNSAgICAgICAgICA1MCAgICAgNjAKCiAgICAyICAgICAgICAgICAgIDEyNCAgICAgICA0NTAgICAgICAgICAgIDIyICAgICAgICAgIDYwICAgICA2NQoKICAgIDMgICAgICAgICAgICAgMTIxICAgICAgIDM4MCAgICAgICAgICAgOCAgICAgICAgICAgIDE5ICAgICA2NwoKICAgIDQgICAgICAgICAgICAgMTA2ICAgICAgIDUwMCAgICAgICAgICAgMjAgICAgICAgICAxNTAgICAgIDkyCgogICAgNSAgICAgICAgICAgICAxNDAgICAgICAgNDAyICAgICAgICAgICAxMSAgICAgICAgICA1NSAgICAgNzAKCkNvbXB1dGUgdGhlIE9uLUJhc2UgUGVyY2VudGFnZSAoT0JQKSBmb3IgZWFjaCBwbGF5ZXIgYW5kIHNlbGVjdCB0aGUgcGxheWVyIHdpdGggdGhlIGhpZ2hlc3QgT0JQLiBTdWJtaXQgeW91ciBjb2RlIGFuZCBrbml0dGVkIFIgSFRNTCBmaWxlIG9yIFJQdWJzIGxpbmsgYXMgaW5zdHJ1Y3RlZC4KCihGb3JtdWxhOiBPQlAgPSAoSGl0cyArIFdhbGtzKSAvIChBdC1CYXRzICsgV2Fsa3MpKQoKYGBge3J9CiMgT24tQmFzZSBQZXJjZW50YWdlIChPQlApCgpQbGF5ZXJJRCA8LSBjKDEsIDIsIDMsIDQsIDUpCkhpdHMgICAgIDwtIGMoMTEyLCAxMjQsIDEyMSwgMTA2LCAxNDApCkF0QmF0cyAgIDwtIGMoNDAwLCA0NTAsIDM4MCwgNTAwLCA0MDIpCkhSICAgICAgIDwtIGMoMjUsIDIyLCA4LCAyMCwgMTEpCkJCICAgICAgIDwtIGMoNTAsIDYwLCAxOSwgMTUwLCA1NSkKU08gICAgICAgPC0gYyg2MCwgNjUsIDY3LCA5MiwgNzApCgpiYXNlYmFsbCA8LSBkYXRhLmZyYW1lKFBsYXllcklELCBIaXRzLCBBdEJhdHMsIEhSLCBCQiwgU08pCgojIE9CUCA9IChIaXRzICsgV2Fsa3MpIC8gKEF0LUJhdHMgKyBXYWxrcykKYmFzZWJhbGwkT0JQIDwtIHJvdW5kKChiYXNlYmFsbCRIaXRzICsgYmFzZWJhbGwkQkIpIC8gKGJhc2ViYWxsJEF0QmF0cyArIGJhc2ViYWxsJEJCKSwgNCkKCiMgVmlldyB0aGUgcmVzdWx0cwpiYXNlYmFsbFssIGMoIlBsYXllcklEIiwgIkhpdHMiLCAiQXRCYXRzIiwgIkJCIiwgIk9CUCIpXQoKIyBQbGF5ZXIgd2l0aCB0aGUgaGlnaGVzdCBPQlAKYmFzZWJhbGwkUGxheWVySURbd2hpY2gubWF4KGJhc2ViYWxsJE9CUCldCm1heChiYXNlYmFsbCRPQlApCmBgYAoKKipSZXN1bHRzKiogClRoZSBwbGF5ZXIgd2l0aCB0aGUgaGlnaGVzdCBPQlAgaXMgcGxheWVyIDUgYXQgMC40MjY3Cg==