Exam 2
Question 5 Reads
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.
# Vectors
fg_made <- c(18, 7, 6, 9, 10, 13)
fg_made
[1] 18 7 6 9 10 13
fg_attempted <- c(36, 23, 12, 18, 24, 22)
fg_attempted
[1] 36 23 12 18 24 22
# Field goal percentage per game
fg_percentages <- (fg_made / fg_attempted) * 100
# Average field goal percentage across the six games
average_fg_percentage <- mean(fg_percentages)
# Output the result
fg_percentages
[1] 50.00000 30.43478 50.00000 50.00000 41.66667 59.09091
average_fg_percentage
[1] 46.86539
Question 6 reads:
Consider the following vectors representing the number of
three-pointers made and attempted by a basketball player in five
games:
Three-Pointers Made: c(3, 5,0, 6, 3, 7) Three-Pointers Attempted:
c(9, 10, 8,12, 11, 12)
Calculate the three-point shooting percentage for each game and
select the correct average three-point shooting percentage for the five
games.
# Vectors
three_made <- c(3, 5, 0, 6, 3, 7)
three_attempted <- c(9, 10, 8, 12, 11, 12)
# Three-point percentage per game
three_point_percentages <- (three_made / three_attempted) * 100
# Average three-point percentage across the six games
average_three_point_percentage <- mean(three_point_percentages)
# Output the results
three_point_percentages
[1] 33.33333 50.00000 0.00000 50.00000 27.27273 58.33333
average_three_point_percentage
[1] 36.4899
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.
- Player 1 b) Player 2 c) Player 3 d) Player 4 e) Player 5
To calculate OBP, you can use the following formula:
OBP = (Hits + Walks) / (At-Bats + Walks)
# Create the dataset
player_data <- data.frame(
PlayerID = c(1, 2, 3, 4, 5),
Hits = c(112, 124, 121, 106, 140),
At_Bats = c(400, 450, 380, 500, 402),
Walks = c(50, 60, 19, 150, 55)
)
# Calculate OBP
player_data$OBP <- (player_data$Hits + player_data$Walks) /
(player_data$At_Bats + player_data$Walks)
# View the dataset with OBP
print(player_data)
# Identify the player with the highest OBP
max_obp_player <- player_data[which.max(player_data$OBP), ]
print(max_obp_player)
LS0tDQp0aXRsZTogIkV4YW0gMiBSIE5vdGVib29rIg0Kb3V0cHV0OiBodG1sX25vdGVib29rDQotLS0NCg0KIyBOYW1lOiBPc2NhciBBbGV4YW5kZXIgVG9iYXINCg0KVGhpcyBpcyBhbiBbUiBNYXJrZG93bl0oaHR0cDovL3JtYXJrZG93bi5yc3R1ZGlvLmNvbSkgTm90ZWJvb2suIFdoZW4geW91IGV4ZWN1dGUgY29kZSB3aXRoaW4gdGhlIG5vdGVib29rLCB0aGUgcmVzdWx0cyBhcHBlYXIgYmVuZWF0aCB0aGUgY29kZS4gDQoNClRyeSBleGVjdXRpbmcgdGhpcyBjaHVuayBieSBjbGlja2luZyB0aGUgKlJ1biogYnV0dG9uIHdpdGhpbiB0aGUgY2h1bmsgb3IgYnkgcGxhY2luZyB5b3VyIGN1cnNvciBpbnNpZGUgaXQgYW5kIHByZXNzaW5nICpDdHJsK1NoaWZ0K0VudGVyKi4gDQoNCmBgYHtyfQ0KcGxvdChjYXJzKQ0KYGBgDQoNCkFkZCBhIG5ldyBjaHVuayBieSBjbGlja2luZyB0aGUgKkluc2VydCBDaHVuayogYnV0dG9uIG9uIHRoZSB0b29sYmFyIG9yIGJ5IHByZXNzaW5nICpDdHJsK0FsdCtJKi4NCg0KV2hlbiB5b3Ugc2F2ZSB0aGUgbm90ZWJvb2ssIGFuIEhUTUwgZmlsZSBjb250YWluaW5nIHRoZSBjb2RlIGFuZCBvdXRwdXQgd2lsbCBiZSBzYXZlZCBhbG9uZ3NpZGUgaXQgKGNsaWNrIHRoZSAqUHJldmlldyogYnV0dG9uIG9yIHByZXNzICpDdHJsK1NoaWZ0K0sqIHRvIHByZXZpZXcgdGhlIEhUTUwgZmlsZSkuDQoNClRoZSBwcmV2aWV3IHNob3dzIHlvdSBhIHJlbmRlcmVkIEhUTUwgY29weSBvZiB0aGUgY29udGVudHMgb2YgdGhlIGVkaXRvci4gQ29uc2VxdWVudGx5LCB1bmxpa2UgKktuaXQqLCAqUHJldmlldyogZG9lcyBub3QgcnVuIGFueSBSIGNvZGUgY2h1bmtzLiBJbnN0ZWFkLCB0aGUgb3V0cHV0IG9mIHRoZSBjaHVuayB3aGVuIGl0IHdhcyBsYXN0IHJ1biBpbiB0aGUgZWRpdG9yIGlzIGRpc3BsYXllZC4NCg0KIyBFeGFtICAyDQoNCioqUXVlc3Rpb24gNSBSZWFkcyoqDQoNCg0KQ29uc2lkZXIgdGhlIGZvbGxvd2luZyB2ZWN0b3JzIHJlcHJlc2VudGluZyB0aGUgbnVtYmVyIG9mIGZpZWxkIGdvYWxzIG1hZGUgYW5kIGF0dGVtcHRlZCBieSBhIGJhc2tldGJhbGwgcGxheWVyIGluIGZpdmUgZ2FtZXM6DQoNCkZpZWxkIEdvYWxzIE1hZGU6IGMoMTgsIDcsIDYsIDksIDEwLDEzKSBGaWVsZCBHb2FscyBBdHRlbXB0ZWQ6IGMoMzYsIDIzLCAxMiwgMTgsIDI0LDIyKQ0KDQpDYWxjdWxhdGUgdGhlIGZpZWxkIGdvYWwgcGVyY2VudGFnZSBmb3IgZWFjaCBnYW1lIGFuZCBzZWxlY3QgdGhlIGNvcnJlY3QgYXZlcmFnZSBmaWVsZCBnb2FsIHBlcmNlbnRhZ2UgZm9yIHRoZSBmaXZlIGdhbWVzLg0KDQpgYGB7cn0NCiMgVmVjdG9ycw0KZmdfbWFkZSA8LSBjKDE4LCA3LCA2LCA5LCAxMCwgMTMpDQpmZ19tYWRlDQpgYGANCmBgYHtyfQ0KZmdfYXR0ZW1wdGVkIDwtIGMoMzYsIDIzLCAxMiwgMTgsIDI0LCAyMikNCmZnX2F0dGVtcHRlZA0KYGBgDQpgYGB7cn0NCiMgRmllbGQgZ29hbCBwZXJjZW50YWdlIHBlciBnYW1lDQpmZ19wZXJjZW50YWdlcyA8LSAoZmdfbWFkZSAvIGZnX2F0dGVtcHRlZCkgKiAxMDANCg0KIyBBdmVyYWdlIGZpZWxkIGdvYWwgcGVyY2VudGFnZSBhY3Jvc3MgdGhlIHNpeCBnYW1lcw0KYXZlcmFnZV9mZ19wZXJjZW50YWdlIDwtIG1lYW4oZmdfcGVyY2VudGFnZXMpDQoNCiMgT3V0cHV0IHRoZSByZXN1bHQNCmZnX3BlcmNlbnRhZ2VzDQphdmVyYWdlX2ZnX3BlcmNlbnRhZ2UNCmBgYA0KDQoqKlF1ZXN0aW9uIDYgcmVhZHM6KioNCg0KDQpDb25zaWRlciB0aGUgZm9sbG93aW5nIHZlY3RvcnMgcmVwcmVzZW50aW5nIHRoZSBudW1iZXIgb2YgdGhyZWUtcG9pbnRlcnMgbWFkZSBhbmQgYXR0ZW1wdGVkIGJ5IGEgYmFza2V0YmFsbCBwbGF5ZXIgaW4gZml2ZSBnYW1lczoNCg0KVGhyZWUtUG9pbnRlcnMgTWFkZTogYygzLCA1LDAsIDYsIDMsIDcpIFRocmVlLVBvaW50ZXJzIEF0dGVtcHRlZDogYyg5LCAxMCwgOCwxMiwgMTEsIDEyKQ0KDQpDYWxjdWxhdGUgdGhlIHRocmVlLXBvaW50IHNob290aW5nIHBlcmNlbnRhZ2UgZm9yIGVhY2ggZ2FtZSBhbmQgc2VsZWN0IHRoZSBjb3JyZWN0IGF2ZXJhZ2UgdGhyZWUtcG9pbnQgc2hvb3RpbmcgcGVyY2VudGFnZSBmb3IgdGhlIGZpdmUgZ2FtZXMuDQpgYGB7cn0NCiMgVmVjdG9ycw0KdGhyZWVfbWFkZSA8LSBjKDMsIDUsIDAsIDYsIDMsIDcpDQp0aHJlZV9hdHRlbXB0ZWQgPC0gYyg5LCAxMCwgOCwgMTIsIDExLCAxMikNCmBgYA0KDQpgYGB7cn0NCiMgVGhyZWUtcG9pbnQgcGVyY2VudGFnZSBwZXIgZ2FtZQ0KdGhyZWVfcG9pbnRfcGVyY2VudGFnZXMgPC0gKHRocmVlX21hZGUgLyB0aHJlZV9hdHRlbXB0ZWQpICogMTAwDQoNCiMgQXZlcmFnZSB0aHJlZS1wb2ludCBwZXJjZW50YWdlIGFjcm9zcyB0aGUgc2l4IGdhbWVzDQphdmVyYWdlX3RocmVlX3BvaW50X3BlcmNlbnRhZ2UgPC0gbWVhbih0aHJlZV9wb2ludF9wZXJjZW50YWdlcykNCg0KIyBPdXRwdXQgdGhlIHJlc3VsdHMNCnRocmVlX3BvaW50X3BlcmNlbnRhZ2VzDQphdmVyYWdlX3RocmVlX3BvaW50X3BlcmNlbnRhZ2UNCmBgYA0KKipRdWVzdGlvbiA3OioqDQoNCg0KQ29uc2lkZXIgdGhlIGZvbGxvd2luZyBkYXRhc2V0IHJlcHJlc2VudGluZyB0aGUgcGVyZm9ybWFuY2Ugb2YgYmFzZWJhbGwgcGxheWVycyBpbiBhIHNlYXNvbi4gSXQgaW5jbHVkZXMgdGhlIGZvbGxvd2luZyB2YXJpYWJsZXM6IFBsYXllcklELCBIaXRzLCBBdC1CYXRzLCBIb21lIFJ1bnMgKEhSKSwgV2Fsa3MgKEJCKSwgYW5kIFN0cmlrZW91dHMgKFNPKS4NCg0KUGxheWVySUQgICAgIEhpdHMgICAgQXQtQmF0cyAgICAgICAgSFIgICAgICAgIEJCICAgICBTTw0KDQogICAgMSAgICAgICAgICAgICAxMTIgICAgICAgNDAwICAgICAgICAgICAyNSAgICAgICAgICA1MCAgICAgNjANCg0KICAgIDIgICAgICAgICAgICAgMTI0ICAgICAgIDQ1MCAgICAgICAgICAgMjIgICAgICAgICAgNjAgICAgIDY1DQoNCiAgICAzICAgICAgICAgICAgIDEyMSAgICAgICAzODAgICAgICAgICAgIDggICAgICAgICAgICAxOSAgICAgNjcNCg0KICAgIDQgICAgICAgICAgICAgMTA2ICAgICAgIDUwMCAgICAgICAgICAgMjAgICAgICAgICAxNTAgICAgIDkyDQoNCiAgICA1ICAgICAgICAgICAgIDE0MCAgICAgICA0MDIgICAgICAgICAgIDExICAgICAgICAgIDU1ICAgICA3MA0KDQpDb21wdXRlIHRoZSBvbi1iYXNlIHBlcmNlbnRhZ2UgKE9CUCkgZm9yIGVhY2ggcGxheWVyIGFuZCBzZWxlY3QgdGhlIHBsYXllciB3aXRoIHRoZSBoaWdoZXN0IE9CUC4NCg0KYSkgUGxheWVyIDEgYikgUGxheWVyIDIgYykgUGxheWVyIDMgZCkgUGxheWVyIDQgZSkgUGxheWVyIDUNCg0KVG8gY2FsY3VsYXRlIE9CUCwgeW91IGNhbiB1c2UgdGhlIGZvbGxvd2luZyBmb3JtdWxhOg0KDQpPQlAgPSAoSGl0cyArIFdhbGtzKSAvIChBdC1CYXRzICsgV2Fsa3MpDQpgYGB7cn0NCiMgQ3JlYXRlIHRoZSBkYXRhc2V0DQpwbGF5ZXJfZGF0YSA8LSBkYXRhLmZyYW1lKA0KICBQbGF5ZXJJRCA9IGMoMSwgMiwgMywgNCwgNSksDQogIEhpdHMgPSBjKDExMiwgMTI0LCAxMjEsIDEwNiwgMTQwKSwNCiAgQXRfQmF0cyA9IGMoNDAwLCA0NTAsIDM4MCwgNTAwLCA0MDIpLA0KICBXYWxrcyA9IGMoNTAsIDYwLCAxOSwgMTUwLCA1NSkNCikNCmBgYA0KDQpgYGB7cn0NCiMgQ2FsY3VsYXRlIE9CUA0KcGxheWVyX2RhdGEkT0JQIDwtIChwbGF5ZXJfZGF0YSRIaXRzICsgcGxheWVyX2RhdGEkV2Fsa3MpIC8gDQogICAgICAgICAgICAgICAgICAgKHBsYXllcl9kYXRhJEF0X0JhdHMgKyBwbGF5ZXJfZGF0YSRXYWxrcykNCmBgYA0KDQpgYGB7cn0NCiMgVmlldyB0aGUgZGF0YXNldCB3aXRoIE9CUA0KcHJpbnQocGxheWVyX2RhdGEpDQpgYGANCg0KYGBge3J9DQoNCiMgSWRlbnRpZnkgdGhlIHBsYXllciB3aXRoIHRoZSBoaWdoZXN0IE9CUA0KbWF4X29icF9wbGF5ZXIgPC0gcGxheWVyX2RhdGFbd2hpY2gubWF4KHBsYXllcl9kYXRhJE9CUCksIF0NCnByaW50KG1heF9vYnBfcGxheWVyKQ0KYGBgDQoNCg==