# Field goals made and attempted
fg_made <- c(18, 7, 6, 9, 10, 13)
fg_attempted <- c(36, 23, 12, 18, 24, 22)
# Field goal percentage per game
fg_percentage <- fg_made / fg_attempted
# Print field goal percentages (per game)
print(fg_percentage)
[1] 0.5000000 0.3043478 0.5000000 0.5000000 0.4166667 0.5909091
average_fg_percentage <- mean(fg_percentage) * 100  # Convert to %
print(round(average_fg_percentage, 2))
[1] 46.87
# Three-pointers made and attempted
tp_made <- c(3, 5, 0, 6, 3, 7)
tp_attempted <- c(9, 10, 8, 12, 11, 12)
# Three-point percentage per game
tp_percentage <- tp_made / tp_attempted
print(tp_percentage)
[1] 0.3333333 0.5000000 0.0000000 0.5000000 0.2727273 0.5833333
# Average three-point percentage
average_tp_percentage <- mean(tp_percentage) * 100  # Convert to %
print(round(average_tp_percentage, 2))
[1] 36.49
# Create the dataset
PlayerID <- c(1, 2, 3, 4, 5)
Hits <- c(112, 124, 121, 106, 140)
At_Bats <- c(400, 450, 380, 500, 402)
BB <- c(50, 60, 19, 150, 55)
# Calculate OBP
OBP <- (Hits + BB) / (At_Bats + BB)
# Combine into a data frame
players <- data.frame(PlayerID, Hits, At_Bats, BB, OBP)

# Print OBPs
print(players)
# Identify player with the highest OBP
max_obp_player <- players[which.max(players$OBP), ]
print(max_obp_player)
LS0tCnRpdGxlOiAiRXhhbTIiCm91dHB1dDogaHRtbF9ub3RlYm9vawotLS0KCgpgYGB7cn0KIyBGaWVsZCBnb2FscyBtYWRlIGFuZCBhdHRlbXB0ZWQKZmdfbWFkZSA8LSBjKDE4LCA3LCA2LCA5LCAxMCwgMTMpCmZnX2F0dGVtcHRlZCA8LSBjKDM2LCAyMywgMTIsIDE4LCAyNCwgMjIpCmBgYAoKYGBge3J9CiMgRmllbGQgZ29hbCBwZXJjZW50YWdlIHBlciBnYW1lCmZnX3BlcmNlbnRhZ2UgPC0gZmdfbWFkZSAvIGZnX2F0dGVtcHRlZApgYGAKCmBgYHtyfQojIFByaW50IGZpZWxkIGdvYWwgcGVyY2VudGFnZXMgKHBlciBnYW1lKQpwcmludChmZ19wZXJjZW50YWdlKQpgYGAKCgpgYGB7cn0KYXZlcmFnZV9mZ19wZXJjZW50YWdlIDwtIG1lYW4oZmdfcGVyY2VudGFnZSkgKiAxMDAgICMgQ29udmVydCB0byAlCnByaW50KHJvdW5kKGF2ZXJhZ2VfZmdfcGVyY2VudGFnZSwgMikpCmBgYAoKYGBge3J9CiMgVGhyZWUtcG9pbnRlcnMgbWFkZSBhbmQgYXR0ZW1wdGVkCnRwX21hZGUgPC0gYygzLCA1LCAwLCA2LCAzLCA3KQp0cF9hdHRlbXB0ZWQgPC0gYyg5LCAxMCwgOCwgMTIsIDExLCAxMikKCmBgYAoKCmBgYHtyfQojIFRocmVlLXBvaW50IHBlcmNlbnRhZ2UgcGVyIGdhbWUKdHBfcGVyY2VudGFnZSA8LSB0cF9tYWRlIC8gdHBfYXR0ZW1wdGVkCgpgYGAKCgoKYGBge3J9CnByaW50KHRwX3BlcmNlbnRhZ2UpCmBgYAoKYGBge3J9CiMgQXZlcmFnZSB0aHJlZS1wb2ludCBwZXJjZW50YWdlCmF2ZXJhZ2VfdHBfcGVyY2VudGFnZSA8LSBtZWFuKHRwX3BlcmNlbnRhZ2UpICogMTAwICAjIENvbnZlcnQgdG8gJQpwcmludChyb3VuZChhdmVyYWdlX3RwX3BlcmNlbnRhZ2UsIDIpKQpgYGAKCgoKYGBge3J9CiMgQ3JlYXRlIHRoZSBkYXRhc2V0ClBsYXllcklEIDwtIGMoMSwgMiwgMywgNCwgNSkKSGl0cyA8LSBjKDExMiwgMTI0LCAxMjEsIDEwNiwgMTQwKQpBdF9CYXRzIDwtIGMoNDAwLCA0NTAsIDM4MCwgNTAwLCA0MDIpCkJCIDwtIGMoNTAsIDYwLCAxOSwgMTUwLCA1NSkKCmBgYAoKYGBge3J9CiMgQ2FsY3VsYXRlIE9CUApPQlAgPC0gKEhpdHMgKyBCQikgLyAoQXRfQmF0cyArIEJCKQpgYGAKCmBgYHtyfQojIENvbWJpbmUgaW50byBhIGRhdGEgZnJhbWUKcGxheWVycyA8LSBkYXRhLmZyYW1lKFBsYXllcklELCBIaXRzLCBBdF9CYXRzLCBCQiwgT0JQKQpgYGAKCgpgYGB7cn0KCiMgUHJpbnQgT0JQcwpwcmludChwbGF5ZXJzKQpgYGAKCgpgYGB7cn0KIyBJZGVudGlmeSBwbGF5ZXIgd2l0aCB0aGUgaGlnaGVzdCBPQlAKbWF4X29icF9wbGF5ZXIgPC0gcGxheWVyc1t3aGljaC5tYXgocGxheWVycyRPQlApLCBdCnByaW50KG1heF9vYnBfcGxheWVyKQpgYGAKCgo=