library(stringr)
# Get tournament data from tournament.txt that I uploaded to github.
theURL <- "https://raw.githubusercontent.com/bpersaud104/Data607/master/tournamentinfo.txt"
Chess <- read.table(file = theURL, header = FALSE, sep = ",")
# Remove the header from data.
Chess <- Chess[-c(1:4),]
head(Chess)
## [1] 1 | GARY HUA |6.0 |W 39|W 21|W 18|W 14|W 7|D 12|D 4|
## [2] ON | 15445895 / R: 1794 ->1817 |N:2 |W |B |W |B |W |B |W |
## [3] -----------------------------------------------------------------------------------------
## [4] 2 | DAKSHESH DARURI |6.0 |W 63|W 58|L 4|W 17|W 16|W 20|W 7|
## [5] MI | 14598900 / R: 1553 ->1663 |N:2 |B |W |B |W |B |W |B |
## [6] -----------------------------------------------------------------------------------------
## 131 Levels: ----------------------------------------------------------------------------------------- ...
class(Chess)
## [1] "factor"
This needs to change to character.
Chess_char <- as.character(Chess)
class(Chess_char)
## [1] "character"
# Seperate data by players
Players <- Chess_char[seq(from = 1, to = length(Chess_char), by = 3)]
Players
## [1] " 1 | GARY HUA |6.0 |W 39|W 21|W 18|W 14|W 7|D 12|D 4|"
## [2] " 2 | DAKSHESH DARURI |6.0 |W 63|W 58|L 4|W 17|W 16|W 20|W 7|"
## [3] " 3 | ADITYA BAJAJ |6.0 |L 8|W 61|W 25|W 21|W 11|W 13|W 12|"
## [4] " 4 | PATRICK H SCHILLING |5.5 |W 23|D 28|W 2|W 26|D 5|W 19|D 1|"
## [5] " 5 | HANSHI ZUO |5.5 |W 45|W 37|D 12|D 13|D 4|W 14|W 17|"
## [6] " 6 | HANSEN SONG |5.0 |W 34|D 29|L 11|W 35|D 10|W 27|W 21|"
## [7] " 7 | GARY DEE SWATHELL |5.0 |W 57|W 46|W 13|W 11|L 1|W 9|L 2|"
## [8] " 8 | EZEKIEL HOUGHTON |5.0 |W 3|W 32|L 14|L 9|W 47|W 28|W 19|"
## [9] " 9 | STEFANO LEE |5.0 |W 25|L 18|W 59|W 8|W 26|L 7|W 20|"
## [10] " 10 | ANVIT RAO |5.0 |D 16|L 19|W 55|W 31|D 6|W 25|W 18|"
## [11] " 11 | CAMERON WILLIAM MC LEMAN |4.5 |D 38|W 56|W 6|L 7|L 3|W 34|W 26|"
## [12] " 12 | KENNETH J TACK |4.5 |W 42|W 33|D 5|W 38|H |D 1|L 3|"
## [13] " 13 | TORRANCE HENRY JR |4.5 |W 36|W 27|L 7|D 5|W 33|L 3|W 32|"
## [14] " 14 | BRADLEY SHAW |4.5 |W 54|W 44|W 8|L 1|D 27|L 5|W 31|"
## [15] " 15 | ZACHARY JAMES HOUGHTON |4.5 |D 19|L 16|W 30|L 22|W 54|W 33|W 38|"
## [16] " 16 | MIKE NIKITIN |4.0 |D 10|W 15|H |W 39|L 2|W 36|U |"
## [17] " 17 | RONALD GRZEGORCZYK |4.0 |W 48|W 41|L 26|L 2|W 23|W 22|L 5|"
## [18] " 18 | DAVID SUNDEEN |4.0 |W 47|W 9|L 1|W 32|L 19|W 38|L 10|"
## [19] " 19 | DIPANKAR ROY |4.0 |D 15|W 10|W 52|D 28|W 18|L 4|L 8|"
## [20] " 20 | JASON ZHENG |4.0 |L 40|W 49|W 23|W 41|W 28|L 2|L 9|"
## [21] " 21 | DINH DANG BUI |4.0 |W 43|L 1|W 47|L 3|W 40|W 39|L 6|"
## [22] " 22 | EUGENE L MCCLURE |4.0 |W 64|D 52|L 28|W 15|H |L 17|W 40|"
## [23] " 23 | ALAN BUI |4.0 |L 4|W 43|L 20|W 58|L 17|W 37|W 46|"
## [24] " 24 | MICHAEL R ALDRICH |4.0 |L 28|L 47|W 43|L 25|W 60|W 44|W 39|"
## [25] " 25 | LOREN SCHWIEBERT |3.5 |L 9|W 53|L 3|W 24|D 34|L 10|W 47|"
## [26] " 26 | MAX ZHU |3.5 |W 49|W 40|W 17|L 4|L 9|D 32|L 11|"
## [27] " 27 | GAURAV GIDWANI |3.5 |W 51|L 13|W 46|W 37|D 14|L 6|U |"
## [28] " 28 | SOFIA ADINA STANESCU-BELLU |3.5 |W 24|D 4|W 22|D 19|L 20|L 8|D 36|"
## [29] " 29 | CHIEDOZIE OKORIE |3.5 |W 50|D 6|L 38|L 34|W 52|W 48|U |"
## [30] " 30 | GEORGE AVERY JONES |3.5 |L 52|D 64|L 15|W 55|L 31|W 61|W 50|"
## [31] " 31 | RISHI SHETTY |3.5 |L 58|D 55|W 64|L 10|W 30|W 50|L 14|"
## [32] " 32 | JOSHUA PHILIP MATHEWS |3.5 |W 61|L 8|W 44|L 18|W 51|D 26|L 13|"
## [33] " 33 | JADE GE |3.5 |W 60|L 12|W 50|D 36|L 13|L 15|W 51|"
## [34] " 34 | MICHAEL JEFFERY THOMAS |3.5 |L 6|W 60|L 37|W 29|D 25|L 11|W 52|"
## [35] " 35 | JOSHUA DAVID LEE |3.5 |L 46|L 38|W 56|L 6|W 57|D 52|W 48|"
## [36] " 36 | SIDDHARTH JHA |3.5 |L 13|W 57|W 51|D 33|H |L 16|D 28|"
## [37] " 37 | AMIYATOSH PWNANANDAM |3.5 |B |L 5|W 34|L 27|H |L 23|W 61|"
## [38] " 38 | BRIAN LIU |3.0 |D 11|W 35|W 29|L 12|H |L 18|L 15|"
## [39] " 39 | JOEL R HENDON |3.0 |L 1|W 54|W 40|L 16|W 44|L 21|L 24|"
## [40] " 40 | FOREST ZHANG |3.0 |W 20|L 26|L 39|W 59|L 21|W 56|L 22|"
## [41] " 41 | KYLE WILLIAM MURPHY |3.0 |W 59|L 17|W 58|L 20|X |U |U |"
## [42] " 42 | JARED GE |3.0 |L 12|L 50|L 57|D 60|D 61|W 64|W 56|"
## [43] " 43 | ROBERT GLEN VASEY |3.0 |L 21|L 23|L 24|W 63|W 59|L 46|W 55|"
## [44] " 44 | JUSTIN D SCHILLING |3.0 |B |L 14|L 32|W 53|L 39|L 24|W 59|"
## [45] " 45 | DEREK YAN |3.0 |L 5|L 51|D 60|L 56|W 63|D 55|W 58|"
## [46] " 46 | JACOB ALEXANDER LAVALLEY |3.0 |W 35|L 7|L 27|L 50|W 64|W 43|L 23|"
## [47] " 47 | ERIC WRIGHT |2.5 |L 18|W 24|L 21|W 61|L 8|D 51|L 25|"
## [48] " 48 | DANIEL KHAIN |2.5 |L 17|W 63|H |D 52|H |L 29|L 35|"
## [49] " 49 | MICHAEL J MARTIN |2.5 |L 26|L 20|D 63|D 64|W 58|H |U |"
## [50] " 50 | SHIVAM JHA |2.5 |L 29|W 42|L 33|W 46|H |L 31|L 30|"
## [51] " 51 | TEJAS AYYAGARI |2.5 |L 27|W 45|L 36|W 57|L 32|D 47|L 33|"
## [52] " 52 | ETHAN GUO |2.5 |W 30|D 22|L 19|D 48|L 29|D 35|L 34|"
## [53] " 53 | JOSE C YBARRA |2.0 |H |L 25|H |L 44|U |W 57|U |"
## [54] " 54 | LARRY HODGE |2.0 |L 14|L 39|L 61|B |L 15|L 59|W 64|"
## [55] " 55 | ALEX KONG |2.0 |L 62|D 31|L 10|L 30|B |D 45|L 43|"
## [56] " 56 | MARISA RICCI |2.0 |H |L 11|L 35|W 45|H |L 40|L 42|"
## [57] " 57 | MICHAEL LU |2.0 |L 7|L 36|W 42|L 51|L 35|L 53|B |"
## [58] " 58 | VIRAJ MOHILE |2.0 |W 31|L 2|L 41|L 23|L 49|B |L 45|"
## [59] " 59 | SEAN M MC CORMICK |2.0 |L 41|B |L 9|L 40|L 43|W 54|L 44|"
## [60] " 60 | JULIA SHEN |1.5 |L 33|L 34|D 45|D 42|L 24|H |U |"
## [61] " 61 | JEZZEL FARKAS |1.5 |L 32|L 3|W 54|L 47|D 42|L 30|L 37|"
## [62] " 62 | ASHWIN BALAJI |1.0 |W 55|U |U |U |U |U |U |"
## [63] " 63 | THOMAS JOSEPH HOSMER |1.0 |L 2|L 48|D 49|L 43|L 45|H |U |"
## [64] " 64 | BEN LI |1.0 |L 22|D 30|L 31|D 49|L 46|L 42|L 54|"
# Seperate data by player's ratings
Ratings <- Chess_char[seq(from = 2, to = length(Chess_char), by = 3)]
Ratings
## [1] " ON | 15445895 / R: 1794 ->1817 |N:2 |W |B |W |B |W |B |W |"
## [2] " MI | 14598900 / R: 1553 ->1663 |N:2 |B |W |B |W |B |W |B |"
## [3] " MI | 14959604 / R: 1384 ->1640 |N:2 |W |B |W |B |W |B |W |"
## [4] " MI | 12616049 / R: 1716 ->1744 |N:2 |W |B |W |B |W |B |B |"
## [5] " MI | 14601533 / R: 1655 ->1690 |N:2 |B |W |B |W |B |W |B |"
## [6] " OH | 15055204 / R: 1686 ->1687 |N:3 |W |B |W |B |B |W |B |"
## [7] " MI | 11146376 / R: 1649 ->1673 |N:3 |W |B |W |B |B |W |W |"
## [8] " MI | 15142253 / R: 1641P17->1657P24 |N:3 |B |W |B |W |B |W |W |"
## [9] " ON | 14954524 / R: 1411 ->1564 |N:2 |W |B |W |B |W |B |B |"
## [10] " MI | 14150362 / R: 1365 ->1544 |N:3 |W |W |B |B |W |B |W |"
## [11] " MI | 12581589 / R: 1712 ->1696 |N:3 |B |W |B |W |B |W |B |"
## [12] " MI | 12681257 / R: 1663 ->1670 |N:3 |W |B |W |B | |W |B |"
## [13] " MI | 15082995 / R: 1666 ->1662 |N:3 |B |W |B |B |W |W |B |"
## [14] " MI | 10131499 / R: 1610 ->1618 |N:3 |W |B |W |W |B |B |W |"
## [15] " MI | 15619130 / R: 1220P13->1416P20 |N:3 |B |B |W |W |B |B |W |"
## [16] " MI | 10295068 / R: 1604 ->1613 |N:3 |B |W | |B |W |B | |"
## [17] " MI | 10297702 / R: 1629 ->1610 |N:3 |W |B |W |B |W |B |W |"
## [18] " MI | 11342094 / R: 1600 ->1600 |N:3 |B |W |B |W |B |W |B |"
## [19] " MI | 14862333 / R: 1564 ->1570 |N:3 |W |B |W |B |W |W |B |"
## [20] " MI | 14529060 / R: 1595 ->1569 |N:4 |W |B |W |B |W |B |W |"
## [21] " ON | 15495066 / R: 1563P22->1562 |N:3 |B |W |B |W |W |B |W |"
## [22] " MI | 12405534 / R: 1555 ->1529 |N:4 |W |B |W |B | |W |B |"
## [23] " ON | 15030142 / R: 1363 ->1371 | |B |W |B |W |B |W |B |"
## [24] " MI | 13469010 / R: 1229 ->1300 |N:4 |B |W |B |B |W |W |B |"
## [25] " MI | 12486656 / R: 1745 ->1681 |N:4 |B |W |B |W |B |W |B |"
## [26] " ON | 15131520 / R: 1579 ->1564 |N:4 |B |W |B |W |B |W |W |"
## [27] " MI | 14476567 / R: 1552 ->1539 |N:4 |W |B |W |B |W |B | |"
## [28] " MI | 14882954 / R: 1507 ->1513 |N:3 |W |W |B |W |B |B |W |"
## [29] " MI | 15323285 / R: 1602P6 ->1508P12 |N:4 |B |W |B |W |W |B | |"
## [30] " ON | 12577178 / R: 1522 ->1444 | |W |B |B |W |W |B |B |"
## [31] " MI | 15131618 / R: 1494 ->1444 | |B |W |B |W |B |W |B |"
## [32] " ON | 14073750 / R: 1441 ->1433 |N:4 |W |B |W |B |W |B |W |"
## [33] " MI | 14691842 / R: 1449 ->1421 | |B |W |B |W |B |W |B |"
## [34] " MI | 15051807 / R: 1399 ->1400 | |B |W |B |B |W |B |W |"
## [35] " MI | 14601397 / R: 1438 ->1392 | |W |W |B |W |B |B |W |"
## [36] " MI | 14773163 / R: 1355 ->1367 |N:4 |W |B |W |B | |W |B |"
## [37] " MI | 15489571 / R: 980P12->1077P17 | | |B |W |W | |B |W |"
## [38] " MI | 15108523 / R: 1423 ->1439 |N:4 |W |B |W |W | |B |B |"
## [39] " MI | 12923035 / R: 1436P23->1413 |N:4 |B |W |B |W |B |W |W |"
## [40] " MI | 14892710 / R: 1348 ->1346 | |B |B |W |W |B |W |W |"
## [41] " MI | 15761443 / R: 1403P5 ->1341P9 | |B |W |B |W | | | |"
## [42] " MI | 14462326 / R: 1332 ->1256 | |B |W |B |B |W |W |B |"
## [43] " MI | 14101068 / R: 1283 ->1244 | |W |B |W |W |B |B |W |"
## [44] " MI | 15323504 / R: 1199 ->1199 | | |W |B |B |W |B |W |"
## [45] " MI | 15372807 / R: 1242 ->1191 | |W |B |W |B |W |B |W |"
## [46] " MI | 15490981 / R: 377P3 ->1076P10 | |B |W |B |W |B |W |W |"
## [47] " MI | 12533115 / R: 1362 ->1341 | |W |B |W |B |W |B |W |"
## [48] " MI | 14369165 / R: 1382 ->1335 | |B |W | |B | |W |B |"
## [49] " MI | 12531685 / R: 1291P12->1259P17 | |W |W |B |W |B | | |"
## [50] " MI | 14773178 / R: 1056 ->1111 | |W |B |W |B | |B |W |"
## [51] " MI | 15205474 / R: 1011 ->1097 | |B |W |B |W |B |W |W |"
## [52] " MI | 14918803 / R: 935 ->1092 |N:4 |B |W |B |W |B |W |B |"
## [53] " MI | 12578849 / R: 1393 ->1359 | | |B | |W | |W | |"
## [54] " MI | 12836773 / R: 1270 ->1200 | |B |B |W | |W |B |W |"
## [55] " MI | 15412571 / R: 1186 ->1163 | |W |B |W |B | |W |B |"
## [56] " MI | 14679887 / R: 1153 ->1140 | | |B |W |W | |B |W |"
## [57] " MI | 15113330 / R: 1092 ->1079 | |B |W |W |B |W |B | |"
## [58] " MI | 14700365 / R: 917 -> 941 | |W |B |W |B |W | |B |"
## [59] " MI | 12841036 / R: 853 -> 878 | |W | |B |B |W |W |B |"
## [60] " MI | 14579262 / R: 967 -> 984 | |W |B |B |W |B | | |"
## [61] " ON | 15771592 / R: 955P11-> 979P18 | |B |W |B |W |B |W |B |"
## [62] " MI | 15219542 / R: 1530 ->1535 | |B | | | | | | |"
## [63] " MI | 15057092 / R: 1175 ->1125 | |W |B |W |B |B | | |"
## [64] " MI | 15006561 / R: 1163 ->1112 | |B |W |W |B |W |B |B |"
Player_Name <- str_trim(str_extract(Players, "(\\w+\\s){2,3}"))
Player_State <- str_extract(Ratings, "\\w\\w")
Total_Points <- as.numeric(str_extract(Players, "\\d.\\d"))
Players_Pre_Rating <- as.integer(str_extract(str_extract(Ratings, "\\D\\d{3,4}\\D"), "\\d+"))
Pre_Rating_Opponent <- str_extract_all(str_extract_all(Players, "\\d+\\|"), "\\d+")
## Warning in stri_extract_all_regex(string, pattern, simplify = simplify, :
## argument is not an atomic vector; coercing
Player_ID <- as.integer(str_extract(Players, "\\d+"))
str_extract caused NAs to be generated. I used str_extract twice to get rid of all the NAs. I used str_extract_all twice to remove “|” between each number. Kept getting an “argument is not an atomic vector; coercing”, ignored message since code was still working.
Played_Rounds <- sapply(Pre_Rating_Opponent, length)
Num_Rounds <- seq_len(max(Played_Rounds)) # Rounds 1 to 7
Results <- t(sapply(Pre_Rating_Opponent, "[", i = Num_Rounds))
Chess_data <- as.data.frame(Results)
Chess_data
## V1 V2 V3 V4 V5 V6 V7
## 1 39 21 18 14 7 12 4
## 2 63 58 4 17 16 20 7
## 3 8 61 25 21 11 13 12
## 4 23 28 2 26 5 19 1
## 5 45 37 12 13 4 14 17
## 6 34 29 11 35 10 27 21
## 7 57 46 13 11 1 9 2
## 8 3 32 14 9 47 28 19
## 9 25 18 59 8 26 7 20
## 10 16 19 55 31 6 25 18
## 11 38 56 6 7 3 34 26
## 12 42 33 5 38 1 3 <NA>
## 13 36 27 7 5 33 3 32
## 14 54 44 8 1 27 5 31
## 15 19 16 30 22 54 33 38
## 16 10 15 39 2 36 <NA> <NA>
## 17 48 41 26 2 23 22 5
## 18 47 9 1 32 19 38 10
## 19 15 10 52 28 18 4 8
## 20 40 49 23 41 28 2 9
## 21 43 1 47 3 40 39 6
## 22 64 52 28 15 17 40 <NA>
## 23 4 43 20 58 17 37 46
## 24 28 47 43 25 60 44 39
## 25 9 53 3 24 34 10 47
## 26 49 40 17 4 9 32 11
## 27 51 13 46 37 14 6 <NA>
## 28 24 4 22 19 20 8 36
## 29 50 6 38 34 52 48 <NA>
## 30 52 64 15 55 31 61 50
## 31 58 55 64 10 30 50 14
## 32 61 8 44 18 51 26 13
## 33 60 12 50 36 13 15 51
## 34 6 60 37 29 25 11 52
## 35 46 38 56 6 57 52 48
## 36 13 57 51 33 16 28 <NA>
## 37 5 34 27 23 61 <NA> <NA>
## 38 11 35 29 12 18 15 <NA>
## 39 1 54 40 16 44 21 24
## 40 20 26 39 59 21 56 22
## 41 59 17 58 20 <NA> <NA> <NA>
## 42 12 50 57 60 61 64 56
## 43 21 23 24 63 59 46 55
## 44 14 32 53 39 24 59 <NA>
## 45 5 51 60 56 63 55 58
## 46 35 7 27 50 64 43 23
## 47 18 24 21 61 8 51 25
## 48 17 63 52 29 35 <NA> <NA>
## 49 26 20 63 64 58 <NA> <NA>
## 50 29 42 33 46 31 30 <NA>
## 51 27 45 36 57 32 47 33
## 52 30 22 19 48 29 35 34
## 53 25 44 57 <NA> <NA> <NA> <NA>
## 54 14 39 61 15 59 64 <NA>
## 55 62 31 10 30 45 43 <NA>
## 56 11 35 45 40 42 <NA> <NA>
## 57 7 36 42 51 35 53 <NA>
## 58 31 2 41 23 49 45 <NA>
## 59 41 9 40 43 54 44 <NA>
## 60 33 34 45 42 24 <NA> <NA>
## 61 32 3 54 47 42 30 37
## 62 55 <NA> <NA> <NA> <NA> <NA> <NA>
## 63 2 48 49 43 45 <NA> <NA>
## 64 22 30 31 49 46 42 54
I need to replace each entry in the data frame with the player’s rating.
Entry <- data.frame(Player_ID, Players_Pre_Rating)
Chess_Tournament <- Chess_data
Chess_Tournament[] <- Entry$Players_Pre_Rating[match(unlist(Chess_Tournament), Entry$Player_ID)]
Chess_Tournament
## V1 V2 V3 V4 V5 V6 V7
## 1 1436 1563 1600 1610 1649 1663 1716
## 2 1175 917 1716 1629 1604 1595 1649
## 3 1641 955 1745 1563 1712 1666 1663
## 4 1363 1507 1553 1579 1655 1564 1794
## 5 1242 980 1663 1666 1716 1610 1629
## 6 1399 1602 1712 1438 1365 1552 1563
## 7 1092 377 1666 1712 1794 1411 1553
## 8 1384 1441 1610 1411 1362 1507 1564
## 9 1745 1600 853 1641 1579 1649 1595
## 10 1604 1564 1186 1494 1686 1745 1600
## 11 1423 1153 1686 1649 1384 1399 1579
## 12 1332 1449 1655 1423 1794 1384 NA
## 13 1355 1552 1649 1655 1449 1384 1441
## 14 1270 1199 1641 1794 1552 1655 1494
## 15 1564 1604 1522 1555 1270 1449 1423
## 16 1365 1220 1436 1553 1355 NA NA
## 17 1382 1403 1579 1553 1363 1555 1655
## 18 1362 1411 1794 1441 1564 1423 1365
## 19 1220 1365 935 1507 1600 1716 1641
## 20 1348 1291 1363 1403 1507 1553 1411
## 21 1283 1794 1362 1384 1348 1436 1686
## 22 1163 935 1507 1220 1629 1348 NA
## 23 1716 1283 1595 917 1629 980 377
## 24 1507 1362 1283 1745 967 1199 1436
## 25 1411 1393 1384 1229 1399 1365 1362
## 26 1291 1348 1629 1716 1411 1441 1712
## 27 1011 1666 377 980 1610 1686 NA
## 28 1229 1716 1555 1564 1595 1641 1355
## 29 1056 1686 1423 1399 935 1382 NA
## 30 935 1163 1220 1186 1494 955 1056
## 31 917 1186 1163 1365 1522 1056 1610
## 32 955 1641 1199 1600 1011 1579 1666
## 33 967 1663 1056 1355 1666 1220 1011
## 34 1686 967 980 1602 1745 1712 935
## 35 377 1423 1153 1686 1092 935 1382
## 36 1666 1092 1011 1449 1604 1507 NA
## 37 1655 1399 1552 1363 955 NA NA
## 38 1712 1438 1602 1663 1600 1220 NA
## 39 1794 1270 1348 1604 1199 1563 1229
## 40 1595 1579 1436 853 1563 1153 1555
## 41 853 1629 917 1595 NA NA NA
## 42 1663 1056 1092 967 955 1163 1153
## 43 1563 1363 1229 1175 853 377 1186
## 44 1610 1441 1393 1436 1229 853 NA
## 45 1655 1011 967 1153 1175 1186 917
## 46 1438 1649 1552 1056 1163 1283 1363
## 47 1600 1229 1563 955 1641 1011 1745
## 48 1629 1175 935 1602 1438 NA NA
## 49 1579 1595 1175 1163 917 NA NA
## 50 1602 1332 1449 377 1494 1522 NA
## 51 1552 1242 1355 1092 1441 1362 1449
## 52 1522 1555 1564 1382 1602 1438 1399
## 53 1745 1199 1092 NA NA NA NA
## 54 1610 1436 955 1220 853 1163 NA
## 55 1530 1494 1365 1522 1242 1283 NA
## 56 1712 1438 1242 1348 1332 NA NA
## 57 1649 1355 1332 1011 1438 1393 NA
## 58 1494 1553 1403 1363 1291 1242 NA
## 59 1403 1411 1348 1283 1270 1199 NA
## 60 1449 1399 1242 1332 1229 NA NA
## 61 1441 1384 1270 1362 1332 1522 980
## 62 1186 NA NA NA NA NA NA
## 63 1553 1382 1291 1283 1242 NA NA
## 64 1555 1522 1494 1291 377 1332 1270
Chess_Tournament$Avg <- round(apply(Chess_Tournament, 1, mean, na.rm = TRUE))
Chess_Tournament
## V1 V2 V3 V4 V5 V6 V7 Avg
## 1 1436 1563 1600 1610 1649 1663 1716 1605
## 2 1175 917 1716 1629 1604 1595 1649 1469
## 3 1641 955 1745 1563 1712 1666 1663 1564
## 4 1363 1507 1553 1579 1655 1564 1794 1574
## 5 1242 980 1663 1666 1716 1610 1629 1501
## 6 1399 1602 1712 1438 1365 1552 1563 1519
## 7 1092 377 1666 1712 1794 1411 1553 1372
## 8 1384 1441 1610 1411 1362 1507 1564 1468
## 9 1745 1600 853 1641 1579 1649 1595 1523
## 10 1604 1564 1186 1494 1686 1745 1600 1554
## 11 1423 1153 1686 1649 1384 1399 1579 1468
## 12 1332 1449 1655 1423 1794 1384 NA 1506
## 13 1355 1552 1649 1655 1449 1384 1441 1498
## 14 1270 1199 1641 1794 1552 1655 1494 1515
## 15 1564 1604 1522 1555 1270 1449 1423 1484
## 16 1365 1220 1436 1553 1355 NA NA 1386
## 17 1382 1403 1579 1553 1363 1555 1655 1499
## 18 1362 1411 1794 1441 1564 1423 1365 1480
## 19 1220 1365 935 1507 1600 1716 1641 1426
## 20 1348 1291 1363 1403 1507 1553 1411 1411
## 21 1283 1794 1362 1384 1348 1436 1686 1470
## 22 1163 935 1507 1220 1629 1348 NA 1300
## 23 1716 1283 1595 917 1629 980 377 1214
## 24 1507 1362 1283 1745 967 1199 1436 1357
## 25 1411 1393 1384 1229 1399 1365 1362 1363
## 26 1291 1348 1629 1716 1411 1441 1712 1507
## 27 1011 1666 377 980 1610 1686 NA 1222
## 28 1229 1716 1555 1564 1595 1641 1355 1522
## 29 1056 1686 1423 1399 935 1382 NA 1314
## 30 935 1163 1220 1186 1494 955 1056 1144
## 31 917 1186 1163 1365 1522 1056 1610 1260
## 32 955 1641 1199 1600 1011 1579 1666 1379
## 33 967 1663 1056 1355 1666 1220 1011 1277
## 34 1686 967 980 1602 1745 1712 935 1375
## 35 377 1423 1153 1686 1092 935 1382 1150
## 36 1666 1092 1011 1449 1604 1507 NA 1388
## 37 1655 1399 1552 1363 955 NA NA 1385
## 38 1712 1438 1602 1663 1600 1220 NA 1539
## 39 1794 1270 1348 1604 1199 1563 1229 1430
## 40 1595 1579 1436 853 1563 1153 1555 1391
## 41 853 1629 917 1595 NA NA NA 1248
## 42 1663 1056 1092 967 955 1163 1153 1150
## 43 1563 1363 1229 1175 853 377 1186 1107
## 44 1610 1441 1393 1436 1229 853 NA 1327
## 45 1655 1011 967 1153 1175 1186 917 1152
## 46 1438 1649 1552 1056 1163 1283 1363 1358
## 47 1600 1229 1563 955 1641 1011 1745 1392
## 48 1629 1175 935 1602 1438 NA NA 1356
## 49 1579 1595 1175 1163 917 NA NA 1286
## 50 1602 1332 1449 377 1494 1522 NA 1296
## 51 1552 1242 1355 1092 1441 1362 1449 1356
## 52 1522 1555 1564 1382 1602 1438 1399 1495
## 53 1745 1199 1092 NA NA NA NA 1345
## 54 1610 1436 955 1220 853 1163 NA 1206
## 55 1530 1494 1365 1522 1242 1283 NA 1406
## 56 1712 1438 1242 1348 1332 NA NA 1414
## 57 1649 1355 1332 1011 1438 1393 NA 1363
## 58 1494 1553 1403 1363 1291 1242 NA 1391
## 59 1403 1411 1348 1283 1270 1199 NA 1319
## 60 1449 1399 1242 1332 1229 NA NA 1330
## 61 1441 1384 1270 1362 1332 1522 980 1327
## 62 1186 NA NA NA NA NA NA 1186
## 63 1553 1382 1291 1283 1242 NA NA 1350
## 64 1555 1522 1494 1291 377 1332 1270 1263
Chess_Final <- data.frame(Player_Name, Player_State, Total_Points, Players_Pre_Rating, Chess_Tournament$Avg)
colnames(Chess_Final) <- c("Player's Name", "Player's State", "Total Number of Points", "Player's Pr-Rating", "Average Pre Chess Rating of Opponents")
head(Chess_Final, 64)
## Player's Name Player's State Total Number of Points
## 1 GARY HUA ON 6.0
## 2 DAKSHESH DARURI MI 6.0
## 3 ADITYA BAJAJ MI 6.0
## 4 PATRICK H SCHILLING MI 5.5
## 5 HANSHI ZUO MI 5.5
## 6 HANSEN SONG OH 5.0
## 7 GARY DEE SWATHELL MI 5.0
## 8 EZEKIEL HOUGHTON MI 5.0
## 9 STEFANO LEE ON 5.0
## 10 ANVIT RAO MI 5.0
## 11 CAMERON WILLIAM MC MI 4.5
## 12 KENNETH J TACK MI 4.5
## 13 TORRANCE HENRY JR MI 4.5
## 14 BRADLEY SHAW MI 4.5
## 15 ZACHARY JAMES HOUGHTON MI 4.5
## 16 MIKE NIKITIN MI 4.0
## 17 RONALD GRZEGORCZYK MI 4.0
## 18 DAVID SUNDEEN MI 4.0
## 19 DIPANKAR ROY MI 4.0
## 20 JASON ZHENG MI 4.0
## 21 DINH DANG BUI ON 4.0
## 22 EUGENE L MCCLURE MI 4.0
## 23 ALAN BUI ON 4.0
## 24 MICHAEL R ALDRICH MI 4.0
## 25 LOREN SCHWIEBERT MI 3.5
## 26 MAX ZHU ON 3.5
## 27 GAURAV GIDWANI MI 3.5
## 28 SOFIA ADINA MI 3.5
## 29 CHIEDOZIE OKORIE MI 3.5
## 30 GEORGE AVERY JONES ON 3.5
## 31 RISHI SHETTY MI 3.5
## 32 JOSHUA PHILIP MATHEWS ON 3.5
## 33 JADE GE MI 3.5
## 34 MICHAEL JEFFERY THOMAS MI 3.5
## 35 JOSHUA DAVID LEE MI 3.5
## 36 SIDDHARTH JHA MI 3.5
## 37 AMIYATOSH PWNANANDAM MI 3.5
## 38 BRIAN LIU MI 3.0
## 39 JOEL R HENDON MI 3.0
## 40 FOREST ZHANG MI 3.0
## 41 KYLE WILLIAM MURPHY MI 3.0
## 42 JARED GE MI 3.0
## 43 ROBERT GLEN VASEY MI 3.0
## 44 JUSTIN D SCHILLING MI 3.0
## 45 DEREK YAN MI 3.0
## 46 JACOB ALEXANDER LAVALLEY MI 3.0
## 47 ERIC WRIGHT MI 2.5
## 48 DANIEL KHAIN MI 2.5
## 49 MICHAEL J MARTIN MI 2.5
## 50 SHIVAM JHA MI 2.5
## 51 TEJAS AYYAGARI MI 2.5
## 52 ETHAN GUO MI 2.5
## 53 JOSE C YBARRA MI 2.0
## 54 LARRY HODGE MI 2.0
## 55 ALEX KONG MI 2.0
## 56 MARISA RICCI MI 2.0
## 57 MICHAEL LU MI 2.0
## 58 VIRAJ MOHILE MI 2.0
## 59 SEAN M MC MI 2.0
## 60 JULIA SHEN MI 1.5
## 61 JEZZEL FARKAS ON 1.5
## 62 ASHWIN BALAJI MI 1.0
## 63 THOMAS JOSEPH HOSMER MI 1.0
## 64 BEN LI MI 1.0
## Player's Pr-Rating Average Pre Chess Rating of Opponents
## 1 1794 1605
## 2 1553 1469
## 3 1384 1564
## 4 1716 1574
## 5 1655 1501
## 6 1686 1519
## 7 1649 1372
## 8 1641 1468
## 9 1411 1523
## 10 1365 1554
## 11 1712 1468
## 12 1663 1506
## 13 1666 1498
## 14 1610 1515
## 15 1220 1484
## 16 1604 1386
## 17 1629 1499
## 18 1600 1480
## 19 1564 1426
## 20 1595 1411
## 21 1563 1470
## 22 1555 1300
## 23 1363 1214
## 24 1229 1357
## 25 1745 1363
## 26 1579 1507
## 27 1552 1222
## 28 1507 1522
## 29 1602 1314
## 30 1522 1144
## 31 1494 1260
## 32 1441 1379
## 33 1449 1277
## 34 1399 1375
## 35 1438 1150
## 36 1355 1388
## 37 980 1385
## 38 1423 1539
## 39 1436 1430
## 40 1348 1391
## 41 1403 1248
## 42 1332 1150
## 43 1283 1107
## 44 1199 1327
## 45 1242 1152
## 46 377 1358
## 47 1362 1392
## 48 1382 1356
## 49 1291 1286
## 50 1056 1296
## 51 1011 1356
## 52 935 1495
## 53 1393 1345
## 54 1270 1206
## 55 1186 1406
## 56 1153 1414
## 57 1092 1363
## 58 917 1391
## 59 853 1319
## 60 967 1330
## 61 955 1327
## 62 1530 1186
## 63 1175 1350
## 64 1163 1263
write.csv(Chess_Final, file = "Data 607 Project 1.csv")