Citation source: https://cran.r-project.org/web/packages/stringr/stringr.pdf

In this project, you’re given a text file with chess tournament results where the information has some structure. Your job is to create an R Markdown file that generates a .CSV file (that could for example be imported into a SQL database) with the following information for all of the players:

Player’s Name, Player’s State, Total Number of Points, Player’s Pre-Rating, and Average Pre Chess Rating of Opponents.

For the first player, the information would be: Gary Hua, ON, 6.0, 1794, 1605. 1605 was calculated by using the pre-tournament opponents ratings of 1436, 1563, 1600, 1610, 1649, 1663, 1716, and divided by the total number of games played.

chess_tornament <- readLines("https://raw.githubusercontent.com/jconno/Data607-project1/main/tournamentinfo.txt")
## Warning in readLines("https://raw.githubusercontent.com/jconno/Data607-
## project1/main/tournamentinfo.txt"): incomplete final line found on 'https://
## raw.githubusercontent.com/jconno/Data607-project1/main/tournamentinfo.txt'
chess_tornament
##   [1] "-----------------------------------------------------------------------------------------" 
##   [2] " Pair | Player Name                     |Total|Round|Round|Round|Round|Round|Round|Round| "
##   [3] " Num  | USCF ID / Rtg (Pre->Post)       | Pts |  1  |  2  |  3  |  4  |  5  |  6  |  7  | "
##   [4] "-----------------------------------------------------------------------------------------" 
##   [5] "    1 | GARY HUA                        |6.0  |W  39|W  21|W  18|W  14|W   7|D  12|D   4|" 
##   [6] "   ON | 15445895 / R: 1794   ->1817     |N:2  |W    |B    |W    |B    |W    |B    |W    |" 
##   [7] "-----------------------------------------------------------------------------------------" 
##   [8] "    2 | DAKSHESH DARURI                 |6.0  |W  63|W  58|L   4|W  17|W  16|W  20|W   7|" 
##   [9] "   MI | 14598900 / R: 1553   ->1663     |N:2  |B    |W    |B    |W    |B    |W    |B    |" 
##  [10] "-----------------------------------------------------------------------------------------" 
##  [11] "    3 | ADITYA BAJAJ                    |6.0  |L   8|W  61|W  25|W  21|W  11|W  13|W  12|" 
##  [12] "   MI | 14959604 / R: 1384   ->1640     |N:2  |W    |B    |W    |B    |W    |B    |W    |" 
##  [13] "-----------------------------------------------------------------------------------------" 
##  [14] "    4 | PATRICK H SCHILLING             |5.5  |W  23|D  28|W   2|W  26|D   5|W  19|D   1|" 
##  [15] "   MI | 12616049 / R: 1716   ->1744     |N:2  |W    |B    |W    |B    |W    |B    |B    |" 
##  [16] "-----------------------------------------------------------------------------------------" 
##  [17] "    5 | HANSHI ZUO                      |5.5  |W  45|W  37|D  12|D  13|D   4|W  14|W  17|" 
##  [18] "   MI | 14601533 / R: 1655   ->1690     |N:2  |B    |W    |B    |W    |B    |W    |B    |" 
##  [19] "-----------------------------------------------------------------------------------------" 
##  [20] "    6 | HANSEN SONG                     |5.0  |W  34|D  29|L  11|W  35|D  10|W  27|W  21|" 
##  [21] "   OH | 15055204 / R: 1686   ->1687     |N:3  |W    |B    |W    |B    |B    |W    |B    |" 
##  [22] "-----------------------------------------------------------------------------------------" 
##  [23] "    7 | GARY DEE SWATHELL               |5.0  |W  57|W  46|W  13|W  11|L   1|W   9|L   2|" 
##  [24] "   MI | 11146376 / R: 1649   ->1673     |N:3  |W    |B    |W    |B    |B    |W    |W    |" 
##  [25] "-----------------------------------------------------------------------------------------" 
##  [26] "    8 | EZEKIEL HOUGHTON                |5.0  |W   3|W  32|L  14|L   9|W  47|W  28|W  19|" 
##  [27] "   MI | 15142253 / R: 1641P17->1657P24  |N:3  |B    |W    |B    |W    |B    |W    |W    |" 
##  [28] "-----------------------------------------------------------------------------------------" 
##  [29] "    9 | STEFANO LEE                     |5.0  |W  25|L  18|W  59|W   8|W  26|L   7|W  20|" 
##  [30] "   ON | 14954524 / R: 1411   ->1564     |N:2  |W    |B    |W    |B    |W    |B    |B    |" 
##  [31] "-----------------------------------------------------------------------------------------" 
##  [32] "   10 | ANVIT RAO                       |5.0  |D  16|L  19|W  55|W  31|D   6|W  25|W  18|" 
##  [33] "   MI | 14150362 / R: 1365   ->1544     |N:3  |W    |W    |B    |B    |W    |B    |W    |" 
##  [34] "-----------------------------------------------------------------------------------------" 
##  [35] "   11 | CAMERON WILLIAM MC LEMAN        |4.5  |D  38|W  56|W   6|L   7|L   3|W  34|W  26|" 
##  [36] "   MI | 12581589 / R: 1712   ->1696     |N:3  |B    |W    |B    |W    |B    |W    |B    |" 
##  [37] "-----------------------------------------------------------------------------------------" 
##  [38] "   12 | KENNETH J TACK                  |4.5  |W  42|W  33|D   5|W  38|H    |D   1|L   3|" 
##  [39] "   MI | 12681257 / R: 1663   ->1670     |N:3  |W    |B    |W    |B    |     |W    |B    |" 
##  [40] "-----------------------------------------------------------------------------------------" 
##  [41] "   13 | TORRANCE HENRY JR               |4.5  |W  36|W  27|L   7|D   5|W  33|L   3|W  32|" 
##  [42] "   MI | 15082995 / R: 1666   ->1662     |N:3  |B    |W    |B    |B    |W    |W    |B    |" 
##  [43] "-----------------------------------------------------------------------------------------" 
##  [44] "   14 | BRADLEY SHAW                    |4.5  |W  54|W  44|W   8|L   1|D  27|L   5|W  31|" 
##  [45] "   MI | 10131499 / R: 1610   ->1618     |N:3  |W    |B    |W    |W    |B    |B    |W    |" 
##  [46] "-----------------------------------------------------------------------------------------" 
##  [47] "   15 | ZACHARY JAMES HOUGHTON          |4.5  |D  19|L  16|W  30|L  22|W  54|W  33|W  38|" 
##  [48] "   MI | 15619130 / R: 1220P13->1416P20  |N:3  |B    |B    |W    |W    |B    |B    |W    |" 
##  [49] "-----------------------------------------------------------------------------------------" 
##  [50] "   16 | MIKE NIKITIN                    |4.0  |D  10|W  15|H    |W  39|L   2|W  36|U    |" 
##  [51] "   MI | 10295068 / R: 1604   ->1613     |N:3  |B    |W    |     |B    |W    |B    |     |" 
##  [52] "-----------------------------------------------------------------------------------------" 
##  [53] "   17 | RONALD GRZEGORCZYK              |4.0  |W  48|W  41|L  26|L   2|W  23|W  22|L   5|" 
##  [54] "   MI | 10297702 / R: 1629   ->1610     |N:3  |W    |B    |W    |B    |W    |B    |W    |" 
##  [55] "-----------------------------------------------------------------------------------------" 
##  [56] "   18 | DAVID SUNDEEN                   |4.0  |W  47|W   9|L   1|W  32|L  19|W  38|L  10|" 
##  [57] "   MI | 11342094 / R: 1600   ->1600     |N:3  |B    |W    |B    |W    |B    |W    |B    |" 
##  [58] "-----------------------------------------------------------------------------------------" 
##  [59] "   19 | DIPANKAR ROY                    |4.0  |D  15|W  10|W  52|D  28|W  18|L   4|L   8|" 
##  [60] "   MI | 14862333 / R: 1564   ->1570     |N:3  |W    |B    |W    |B    |W    |W    |B    |" 
##  [61] "-----------------------------------------------------------------------------------------" 
##  [62] "   20 | JASON ZHENG                     |4.0  |L  40|W  49|W  23|W  41|W  28|L   2|L   9|" 
##  [63] "   MI | 14529060 / R: 1595   ->1569     |N:4  |W    |B    |W    |B    |W    |B    |W    |" 
##  [64] "-----------------------------------------------------------------------------------------" 
##  [65] "   21 | DINH DANG BUI                   |4.0  |W  43|L   1|W  47|L   3|W  40|W  39|L   6|" 
##  [66] "   ON | 15495066 / R: 1563P22->1562     |N:3  |B    |W    |B    |W    |W    |B    |W    |" 
##  [67] "-----------------------------------------------------------------------------------------" 
##  [68] "   22 | EUGENE L MCCLURE                |4.0  |W  64|D  52|L  28|W  15|H    |L  17|W  40|" 
##  [69] "   MI | 12405534 / R: 1555   ->1529     |N:4  |W    |B    |W    |B    |     |W    |B    |" 
##  [70] "-----------------------------------------------------------------------------------------" 
##  [71] "   23 | ALAN BUI                        |4.0  |L   4|W  43|L  20|W  58|L  17|W  37|W  46|" 
##  [72] "   ON | 15030142 / R: 1363   ->1371     |     |B    |W    |B    |W    |B    |W    |B    |" 
##  [73] "-----------------------------------------------------------------------------------------" 
##  [74] "   24 | MICHAEL R ALDRICH               |4.0  |L  28|L  47|W  43|L  25|W  60|W  44|W  39|" 
##  [75] "   MI | 13469010 / R: 1229   ->1300     |N:4  |B    |W    |B    |B    |W    |W    |B    |" 
##  [76] "-----------------------------------------------------------------------------------------" 
##  [77] "   25 | LOREN SCHWIEBERT                |3.5  |L   9|W  53|L   3|W  24|D  34|L  10|W  47|" 
##  [78] "   MI | 12486656 / R: 1745   ->1681     |N:4  |B    |W    |B    |W    |B    |W    |B    |" 
##  [79] "-----------------------------------------------------------------------------------------" 
##  [80] "   26 | MAX ZHU                         |3.5  |W  49|W  40|W  17|L   4|L   9|D  32|L  11|" 
##  [81] "   ON | 15131520 / R: 1579   ->1564     |N:4  |B    |W    |B    |W    |B    |W    |W    |" 
##  [82] "-----------------------------------------------------------------------------------------" 
##  [83] "   27 | GAURAV GIDWANI                  |3.5  |W  51|L  13|W  46|W  37|D  14|L   6|U    |" 
##  [84] "   MI | 14476567 / R: 1552   ->1539     |N:4  |W    |B    |W    |B    |W    |B    |     |" 
##  [85] "-----------------------------------------------------------------------------------------" 
##  [86] "   28 | SOFIA ADINA STANESCU-BELLU      |3.5  |W  24|D   4|W  22|D  19|L  20|L   8|D  36|" 
##  [87] "   MI | 14882954 / R: 1507   ->1513     |N:3  |W    |W    |B    |W    |B    |B    |W    |" 
##  [88] "-----------------------------------------------------------------------------------------" 
##  [89] "   29 | CHIEDOZIE OKORIE                |3.5  |W  50|D   6|L  38|L  34|W  52|W  48|U    |" 
##  [90] "   MI | 15323285 / R: 1602P6 ->1508P12  |N:4  |B    |W    |B    |W    |W    |B    |     |" 
##  [91] "-----------------------------------------------------------------------------------------" 
##  [92] "   30 | GEORGE AVERY JONES              |3.5  |L  52|D  64|L  15|W  55|L  31|W  61|W  50|" 
##  [93] "   ON | 12577178 / R: 1522   ->1444     |     |W    |B    |B    |W    |W    |B    |B    |" 
##  [94] "-----------------------------------------------------------------------------------------" 
##  [95] "   31 | RISHI SHETTY                    |3.5  |L  58|D  55|W  64|L  10|W  30|W  50|L  14|" 
##  [96] "   MI | 15131618 / R: 1494   ->1444     |     |B    |W    |B    |W    |B    |W    |B    |" 
##  [97] "-----------------------------------------------------------------------------------------" 
##  [98] "   32 | JOSHUA PHILIP MATHEWS           |3.5  |W  61|L   8|W  44|L  18|W  51|D  26|L  13|" 
##  [99] "   ON | 14073750 / R: 1441   ->1433     |N:4  |W    |B    |W    |B    |W    |B    |W    |" 
## [100] "-----------------------------------------------------------------------------------------" 
## [101] "   33 | JADE GE                         |3.5  |W  60|L  12|W  50|D  36|L  13|L  15|W  51|" 
## [102] "   MI | 14691842 / R: 1449   ->1421     |     |B    |W    |B    |W    |B    |W    |B    |" 
## [103] "-----------------------------------------------------------------------------------------" 
## [104] "   34 | MICHAEL JEFFERY THOMAS          |3.5  |L   6|W  60|L  37|W  29|D  25|L  11|W  52|" 
## [105] "   MI | 15051807 / R: 1399   ->1400     |     |B    |W    |B    |B    |W    |B    |W    |" 
## [106] "-----------------------------------------------------------------------------------------" 
## [107] "   35 | JOSHUA DAVID LEE                |3.5  |L  46|L  38|W  56|L   6|W  57|D  52|W  48|" 
## [108] "   MI | 14601397 / R: 1438   ->1392     |     |W    |W    |B    |W    |B    |B    |W    |" 
## [109] "-----------------------------------------------------------------------------------------" 
## [110] "   36 | SIDDHARTH JHA                   |3.5  |L  13|W  57|W  51|D  33|H    |L  16|D  28|" 
## [111] "   MI | 14773163 / R: 1355   ->1367     |N:4  |W    |B    |W    |B    |     |W    |B    |" 
## [112] "-----------------------------------------------------------------------------------------" 
## [113] "   37 | AMIYATOSH PWNANANDAM            |3.5  |B    |L   5|W  34|L  27|H    |L  23|W  61|" 
## [114] "   MI | 15489571 / R:  980P12->1077P17  |     |     |B    |W    |W    |     |B    |W    |" 
## [115] "-----------------------------------------------------------------------------------------" 
## [116] "   38 | BRIAN LIU                       |3.0  |D  11|W  35|W  29|L  12|H    |L  18|L  15|" 
## [117] "   MI | 15108523 / R: 1423   ->1439     |N:4  |W    |B    |W    |W    |     |B    |B    |" 
## [118] "-----------------------------------------------------------------------------------------" 
## [119] "   39 | JOEL R HENDON                   |3.0  |L   1|W  54|W  40|L  16|W  44|L  21|L  24|" 
## [120] "   MI | 12923035 / R: 1436P23->1413     |N:4  |B    |W    |B    |W    |B    |W    |W    |" 
## [121] "-----------------------------------------------------------------------------------------" 
## [122] "   40 | FOREST ZHANG                    |3.0  |W  20|L  26|L  39|W  59|L  21|W  56|L  22|" 
## [123] "   MI | 14892710 / R: 1348   ->1346     |     |B    |B    |W    |W    |B    |W    |W    |" 
## [124] "-----------------------------------------------------------------------------------------" 
## [125] "   41 | KYLE WILLIAM MURPHY             |3.0  |W  59|L  17|W  58|L  20|X    |U    |U    |" 
## [126] "   MI | 15761443 / R: 1403P5 ->1341P9   |     |B    |W    |B    |W    |     |     |     |" 
## [127] "-----------------------------------------------------------------------------------------" 
## [128] "   42 | JARED GE                        |3.0  |L  12|L  50|L  57|D  60|D  61|W  64|W  56|" 
## [129] "   MI | 14462326 / R: 1332   ->1256     |     |B    |W    |B    |B    |W    |W    |B    |" 
## [130] "-----------------------------------------------------------------------------------------" 
## [131] "   43 | ROBERT GLEN VASEY               |3.0  |L  21|L  23|L  24|W  63|W  59|L  46|W  55|" 
## [132] "   MI | 14101068 / R: 1283   ->1244     |     |W    |B    |W    |W    |B    |B    |W    |" 
## [133] "-----------------------------------------------------------------------------------------" 
## [134] "   44 | JUSTIN D SCHILLING              |3.0  |B    |L  14|L  32|W  53|L  39|L  24|W  59|" 
## [135] "   MI | 15323504 / R: 1199   ->1199     |     |     |W    |B    |B    |W    |B    |W    |" 
## [136] "-----------------------------------------------------------------------------------------" 
## [137] "   45 | DEREK YAN                       |3.0  |L   5|L  51|D  60|L  56|W  63|D  55|W  58|" 
## [138] "   MI | 15372807 / R: 1242   ->1191     |     |W    |B    |W    |B    |W    |B    |W    |" 
## [139] "-----------------------------------------------------------------------------------------" 
## [140] "   46 | JACOB ALEXANDER LAVALLEY        |3.0  |W  35|L   7|L  27|L  50|W  64|W  43|L  23|" 
## [141] "   MI | 15490981 / R:  377P3 ->1076P10  |     |B    |W    |B    |W    |B    |W    |W    |" 
## [142] "-----------------------------------------------------------------------------------------" 
## [143] "   47 | ERIC WRIGHT                     |2.5  |L  18|W  24|L  21|W  61|L   8|D  51|L  25|" 
## [144] "   MI | 12533115 / R: 1362   ->1341     |     |W    |B    |W    |B    |W    |B    |W    |" 
## [145] "-----------------------------------------------------------------------------------------" 
## [146] "   48 | DANIEL KHAIN                    |2.5  |L  17|W  63|H    |D  52|H    |L  29|L  35|" 
## [147] "   MI | 14369165 / R: 1382   ->1335     |     |B    |W    |     |B    |     |W    |B    |" 
## [148] "-----------------------------------------------------------------------------------------" 
## [149] "   49 | MICHAEL J MARTIN                |2.5  |L  26|L  20|D  63|D  64|W  58|H    |U    |" 
## [150] "   MI | 12531685 / R: 1291P12->1259P17  |     |W    |W    |B    |W    |B    |     |     |" 
## [151] "-----------------------------------------------------------------------------------------" 
## [152] "   50 | SHIVAM JHA                      |2.5  |L  29|W  42|L  33|W  46|H    |L  31|L  30|" 
## [153] "   MI | 14773178 / R: 1056   ->1111     |     |W    |B    |W    |B    |     |B    |W    |" 
## [154] "-----------------------------------------------------------------------------------------" 
## [155] "   51 | TEJAS AYYAGARI                  |2.5  |L  27|W  45|L  36|W  57|L  32|D  47|L  33|" 
## [156] "   MI | 15205474 / R: 1011   ->1097     |     |B    |W    |B    |W    |B    |W    |W    |" 
## [157] "-----------------------------------------------------------------------------------------" 
## [158] "   52 | ETHAN GUO                       |2.5  |W  30|D  22|L  19|D  48|L  29|D  35|L  34|" 
## [159] "   MI | 14918803 / R:  935   ->1092     |N:4  |B    |W    |B    |W    |B    |W    |B    |" 
## [160] "-----------------------------------------------------------------------------------------" 
## [161] "   53 | JOSE C YBARRA                   |2.0  |H    |L  25|H    |L  44|U    |W  57|U    |" 
## [162] "   MI | 12578849 / R: 1393   ->1359     |     |     |B    |     |W    |     |W    |     |" 
## [163] "-----------------------------------------------------------------------------------------" 
## [164] "   54 | LARRY HODGE                     |2.0  |L  14|L  39|L  61|B    |L  15|L  59|W  64|" 
## [165] "   MI | 12836773 / R: 1270   ->1200     |     |B    |B    |W    |     |W    |B    |W    |" 
## [166] "-----------------------------------------------------------------------------------------" 
## [167] "   55 | ALEX KONG                       |2.0  |L  62|D  31|L  10|L  30|B    |D  45|L  43|" 
## [168] "   MI | 15412571 / R: 1186   ->1163     |     |W    |B    |W    |B    |     |W    |B    |" 
## [169] "-----------------------------------------------------------------------------------------" 
## [170] "   56 | MARISA RICCI                    |2.0  |H    |L  11|L  35|W  45|H    |L  40|L  42|" 
## [171] "   MI | 14679887 / R: 1153   ->1140     |     |     |B    |W    |W    |     |B    |W    |" 
## [172] "-----------------------------------------------------------------------------------------" 
## [173] "   57 | MICHAEL LU                      |2.0  |L   7|L  36|W  42|L  51|L  35|L  53|B    |" 
## [174] "   MI | 15113330 / R: 1092   ->1079     |     |B    |W    |W    |B    |W    |B    |     |" 
## [175] "-----------------------------------------------------------------------------------------" 
## [176] "   58 | VIRAJ MOHILE                    |2.0  |W  31|L   2|L  41|L  23|L  49|B    |L  45|" 
## [177] "   MI | 14700365 / R:  917   -> 941     |     |W    |B    |W    |B    |W    |     |B    |" 
## [178] "-----------------------------------------------------------------------------------------" 
## [179] "   59 | SEAN M MC CORMICK               |2.0  |L  41|B    |L   9|L  40|L  43|W  54|L  44|" 
## [180] "   MI | 12841036 / R:  853   -> 878     |     |W    |     |B    |B    |W    |W    |B    |" 
## [181] "-----------------------------------------------------------------------------------------" 
## [182] "   60 | JULIA SHEN                      |1.5  |L  33|L  34|D  45|D  42|L  24|H    |U    |" 
## [183] "   MI | 14579262 / R:  967   -> 984     |     |W    |B    |B    |W    |B    |     |     |" 
## [184] "-----------------------------------------------------------------------------------------" 
## [185] "   61 | JEZZEL FARKAS                   |1.5  |L  32|L   3|W  54|L  47|D  42|L  30|L  37|" 
## [186] "   ON | 15771592 / R:  955P11-> 979P18  |     |B    |W    |B    |W    |B    |W    |B    |" 
## [187] "-----------------------------------------------------------------------------------------" 
## [188] "   62 | ASHWIN BALAJI                   |1.0  |W  55|U    |U    |U    |U    |U    |U    |" 
## [189] "   MI | 15219542 / R: 1530   ->1535     |     |B    |     |     |     |     |     |     |" 
## [190] "-----------------------------------------------------------------------------------------" 
## [191] "   63 | THOMAS JOSEPH HOSMER            |1.0  |L   2|L  48|D  49|L  43|L  45|H    |U    |" 
## [192] "   MI | 15057092 / R: 1175   ->1125     |     |W    |B    |W    |B    |B    |     |     |" 
## [193] "-----------------------------------------------------------------------------------------" 
## [194] "   64 | BEN LI                          |1.0  |L  22|D  30|L  31|D  49|L  46|L  42|L  54|" 
## [195] "   MI | 15006561 / R: 1163   ->1112     |     |B    |W    |W    |B    |W    |B    |B    |" 
## [196] "-----------------------------------------------------------------------------------------"
names <- unlist(str_extract_all(chess_tornament, " [[:alpha:]]{1,} *[[:alpha:].,-]{1,} *[[:alpha:].,-]{1,} *[[:alpha:].,-]{1,}"))
names <- unlist(str_extract_all(names, "[[:alpha:]]{1,} *[[:alpha:].,-]{1,} *[[:alpha:].,-]{1,} *[[:alpha:].,-]{1,}"))
names
##  [1] "Pair"                       "Player Name"               
##  [3] "USCF ID"                    "GARY HUA"                  
##  [5] "DAKSHESH DARURI"            "ADITYA BAJAJ"              
##  [7] "PATRICK H SCHILLING"        "HANSHI ZUO"                
##  [9] "HANSEN SONG"                "GARY DEE SWATHELL"         
## [11] "EZEKIEL HOUGHTON"           "STEFANO LEE"               
## [13] "ANVIT RAO"                  "CAMERON WILLIAM MC LEMAN"  
## [15] "KENNETH J TACK"             "TORRANCE HENRY JR"         
## [17] "BRADLEY SHAW"               "ZACHARY JAMES HOUGHTON"    
## [19] "MIKE NIKITIN"               "RONALD GRZEGORCZYK"        
## [21] "DAVID SUNDEEN"              "DIPANKAR ROY"              
## [23] "JASON ZHENG"                "DINH DANG BUI"             
## [25] "EUGENE L MCCLURE"           "ALAN BUI"                  
## [27] "MICHAEL R ALDRICH"          "LOREN SCHWIEBERT"          
## [29] "MAX ZHU"                    "GAURAV GIDWANI"            
## [31] "SOFIA ADINA STANESCU-BELLU" "CHIEDOZIE OKORIE"          
## [33] "GEORGE AVERY JONES"         "RISHI SHETTY"              
## [35] "JOSHUA PHILIP MATHEWS"      "JADE GE"                   
## [37] "MICHAEL JEFFERY THOMAS"     "JOSHUA DAVID LEE"          
## [39] "SIDDHARTH JHA"              "AMIYATOSH PWNANANDAM"      
## [41] "BRIAN LIU"                  "JOEL R HENDON"             
## [43] "FOREST ZHANG"               "KYLE WILLIAM MURPHY"       
## [45] "JARED GE"                   "ROBERT GLEN VASEY"         
## [47] "JUSTIN D SCHILLING"         "DEREK YAN"                 
## [49] "JACOB ALEXANDER LAVALLEY"   "ERIC WRIGHT"               
## [51] "DANIEL KHAIN"               "MICHAEL J MARTIN"          
## [53] "SHIVAM JHA"                 "TEJAS AYYAGARI"            
## [55] "ETHAN GUO"                  "JOSE C YBARRA"             
## [57] "LARRY HODGE"                "ALEX KONG"                 
## [59] "MARISA RICCI"               "MICHAEL LU"                
## [61] "VIRAJ MOHILE"               "SEAN M MC CORMICK"         
## [63] "JULIA SHEN"                 "JEZZEL FARKAS"             
## [65] "ASHWIN BALAJI"              "THOMAS JOSEPH HOSMER"      
## [67] "BEN LI"
df_names <- as.data.frame(names[4:67])
df_names
##                   names[4:67]
## 1                    GARY HUA
## 2             DAKSHESH DARURI
## 3                ADITYA BAJAJ
## 4         PATRICK H SCHILLING
## 5                  HANSHI ZUO
## 6                 HANSEN SONG
## 7           GARY DEE SWATHELL
## 8            EZEKIEL HOUGHTON
## 9                 STEFANO LEE
## 10                  ANVIT RAO
## 11   CAMERON WILLIAM MC LEMAN
## 12             KENNETH J TACK
## 13          TORRANCE HENRY JR
## 14               BRADLEY SHAW
## 15     ZACHARY JAMES HOUGHTON
## 16               MIKE NIKITIN
## 17         RONALD GRZEGORCZYK
## 18              DAVID SUNDEEN
## 19               DIPANKAR ROY
## 20                JASON ZHENG
## 21              DINH DANG BUI
## 22           EUGENE L MCCLURE
## 23                   ALAN BUI
## 24          MICHAEL R ALDRICH
## 25           LOREN SCHWIEBERT
## 26                    MAX ZHU
## 27             GAURAV GIDWANI
## 28 SOFIA ADINA STANESCU-BELLU
## 29           CHIEDOZIE OKORIE
## 30         GEORGE AVERY JONES
## 31               RISHI SHETTY
## 32      JOSHUA PHILIP MATHEWS
## 33                    JADE GE
## 34     MICHAEL JEFFERY THOMAS
## 35           JOSHUA DAVID LEE
## 36              SIDDHARTH JHA
## 37       AMIYATOSH PWNANANDAM
## 38                  BRIAN LIU
## 39              JOEL R HENDON
## 40               FOREST ZHANG
## 41        KYLE WILLIAM MURPHY
## 42                   JARED GE
## 43          ROBERT GLEN VASEY
## 44         JUSTIN D SCHILLING
## 45                  DEREK YAN
## 46   JACOB ALEXANDER LAVALLEY
## 47                ERIC WRIGHT
## 48               DANIEL KHAIN
## 49           MICHAEL J MARTIN
## 50                 SHIVAM JHA
## 51             TEJAS AYYAGARI
## 52                  ETHAN GUO
## 53              JOSE C YBARRA
## 54                LARRY HODGE
## 55                  ALEX KONG
## 56               MARISA RICCI
## 57                 MICHAEL LU
## 58               VIRAJ MOHILE
## 59          SEAN M MC CORMICK
## 60                 JULIA SHEN
## 61              JEZZEL FARKAS
## 62              ASHWIN BALAJI
## 63       THOMAS JOSEPH HOSMER
## 64                     BEN LI
states <- unlist(str_extract_all(chess_tornament, " [A-Z]{2,2} \\|"))
states <- unlist(str_extract_all(states, "[A-Z]{2,2}"))
states
##  [1] "ON" "MI" "MI" "MI" "MI" "OH" "MI" "MI" "ON" "MI" "MI" "MI" "MI" "MI" "MI"
## [16] "MI" "MI" "MI" "MI" "MI" "ON" "MI" "ON" "MI" "MI" "ON" "MI" "MI" "MI" "ON"
## [31] "MI" "ON" "MI" "MI" "MI" "MI" "MI" "MI" "MI" "MI" "MI" "MI" "MI" "MI" "MI"
## [46] "MI" "MI" "MI" "MI" "MI" "MI" "MI" "MI" "MI" "MI" "MI" "MI" "MI" "MI" "MI"
## [61] "ON" "MI" "MI" "MI"
df_states <- as.data.frame(states)
total_points <- unlist(str_extract_all(chess_tornament, "\\|[[:digit:]]{1,1}.[[:digit:]]{1,1} "))
total_points
##  [1] "|6.0 " "|6.0 " "|6.0 " "|5.5 " "|5.5 " "|5.0 " "|5.0 " "|5.0 " "|5.0 "
## [10] "|5.0 " "|4.5 " "|4.5 " "|4.5 " "|4.5 " "|4.5 " "|4.0 " "|4.0 " "|4.0 "
## [19] "|4.0 " "|4.0 " "|4.0 " "|4.0 " "|4.0 " "|4.0 " "|3.5 " "|3.5 " "|3.5 "
## [28] "|3.5 " "|3.5 " "|3.5 " "|3.5 " "|3.5 " "|3.5 " "|3.5 " "|3.5 " "|3.5 "
## [37] "|3.5 " "|3.0 " "|3.0 " "|3.0 " "|3.0 " "|3.0 " "|3.0 " "|3.0 " "|3.0 "
## [46] "|3.0 " "|2.5 " "|2.5 " "|2.5 " "|2.5 " "|2.5 " "|2.5 " "|2.0 " "|2.0 "
## [55] "|2.0 " "|2.0 " "|2.0 " "|2.0 " "|2.0 " "|1.5 " "|1.5 " "|1.0 " "|1.0 "
## [64] "|1.0 "
total_points <- as.numeric(unlist(str_extract_all(total_points,"[[:digit:]]{1,1}.[[:digit:]]{1,1}")))
total_points
##  [1] 6.0 6.0 6.0 5.5 5.5 5.0 5.0 5.0 5.0 5.0 4.5 4.5 4.5 4.5 4.5 4.0 4.0 4.0 4.0
## [20] 4.0 4.0 4.0 4.0 4.0 3.5 3.5 3.5 3.5 3.5 3.5 3.5 3.5 3.5 3.5 3.5 3.5 3.5 3.0
## [39] 3.0 3.0 3.0 3.0 3.0 3.0 3.0 3.0 2.5 2.5 2.5 2.5 2.5 2.5 2.0 2.0 2.0 2.0 2.0
## [58] 2.0 2.0 1.5 1.5 1.0 1.0 1.0
df_total_points <- as.data.frame(total_points)
pre_rating <- unlist(str_extract_all(chess_tornament, "R: [ [:digit:]]+"))
pre_rating
##  [1] "R: 1794   " "R: 1553   " "R: 1384   " "R: 1716   " "R: 1655   "
##  [6] "R: 1686   " "R: 1649   " "R: 1641"    "R: 1411   " "R: 1365   "
## [11] "R: 1712   " "R: 1663   " "R: 1666   " "R: 1610   " "R: 1220"   
## [16] "R: 1604   " "R: 1629   " "R: 1600   " "R: 1564   " "R: 1595   "
## [21] "R: 1563"    "R: 1555   " "R: 1363   " "R: 1229   " "R: 1745   "
## [26] "R: 1579   " "R: 1552   " "R: 1507   " "R: 1602"    "R: 1522   "
## [31] "R: 1494   " "R: 1441   " "R: 1449   " "R: 1399   " "R: 1438   "
## [36] "R: 1355   " "R:  980"    "R: 1423   " "R: 1436"    "R: 1348   "
## [41] "R: 1403"    "R: 1332   " "R: 1283   " "R: 1199   " "R: 1242   "
## [46] "R:  377"    "R: 1362   " "R: 1382   " "R: 1291"    "R: 1056   "
## [51] "R: 1011   " "R:  935   " "R: 1393   " "R: 1270   " "R: 1186   "
## [56] "R: 1153   " "R: 1092   " "R:  917   " "R:  853   " "R:  967   "
## [61] "R:  955"    "R: 1530   " "R: 1175   " "R: 1163   "
pre_rating <- as.numeric(unlist(str_extract_all(pre_rating,"[[:digit:]]{1,4}")))
pre_rating
##  [1] 1794 1553 1384 1716 1655 1686 1649 1641 1411 1365 1712 1663 1666 1610 1220
## [16] 1604 1629 1600 1564 1595 1563 1555 1363 1229 1745 1579 1552 1507 1602 1522
## [31] 1494 1441 1449 1399 1438 1355  980 1423 1436 1348 1403 1332 1283 1199 1242
## [46]  377 1362 1382 1291 1056 1011  935 1393 1270 1186 1153 1092  917  853  967
## [61]  955 1530 1175 1163
df_pre_rating <- as.data.frame(pre_rating)
avg_pre_rating_opponent <- matrix(nrow = 64, ncol = 1)

for (i in 0:63) {

opp_total_pre_rating = 0
players_opponents <- unlist(str_extract_all(chess_tornament[5+3*i], "\\|[A-Z]{1,1} [ [:digit:]]{1,3}"))
players_opponents <- as.numeric(unlist(str_extract_all(players_opponents, "[[:digit:]]{1,2}")))

for (j in 1:length(players_opponents)) {
  
  opp_total_pre_rating = opp_total_pre_rating + df_pre_rating[players_opponents[j],1]
}

avg_pre_rating_opponent[i+1,1] <- round(opp_total_pre_rating/length(players_opponents),0)
}

df_avg_pre_rating_opponent <- as.data.frame(avg_pre_rating_opponent)
df_avg_pre_rating_opponent
##      V1
## 1  1605
## 2  1469
## 3  1564
## 4  1574
## 5  1501
## 6  1519
## 7  1372
## 8  1468
## 9  1523
## 10 1554
## 11 1468
## 12 1506
## 13 1498
## 14 1515
## 15 1484
## 16 1386
## 17 1499
## 18 1480
## 19 1426
## 20 1411
## 21 1470
## 22 1300
## 23 1214
## 24 1357
## 25 1363
## 26 1507
## 27 1222
## 28 1522
## 29 1314
## 30 1144
## 31 1260
## 32 1379
## 33 1277
## 34 1375
## 35 1150
## 36 1388
## 37 1385
## 38 1539
## 39 1430
## 40 1391
## 41 1248
## 42 1150
## 43 1107
## 44 1327
## 45 1152
## 46 1358
## 47 1392
## 48 1356
## 49 1286
## 50 1296
## 51 1356
## 52 1495
## 53 1345
## 54 1206
## 55 1406
## 56 1414
## 57 1363
## 58 1391
## 59 1319
## 60 1330
## 61 1327
## 62 1186
## 63 1350
## 64 1263
final_607_project_1 <- cbind(df_names,df_states, df_total_points, df_pre_rating, df_avg_pre_rating_opponent)
names(final_607_project_1) <- c("Player Name", "State", "Total Points", "Pre-Rating", "Avg. Opponent Pre-Rating")
# Shows raw .csv within R
write.csv(final_607_project_1, row.names = FALSE)
## "Player Name","State","Total Points","Pre-Rating","Avg. Opponent Pre-Rating"
## "GARY HUA","ON",6,1794,1605
## "DAKSHESH DARURI","MI",6,1553,1469
## "ADITYA BAJAJ","MI",6,1384,1564
## "PATRICK H SCHILLING","MI",5.5,1716,1574
## "HANSHI ZUO","MI",5.5,1655,1501
## "HANSEN SONG","OH",5,1686,1519
## "GARY DEE SWATHELL","MI",5,1649,1372
## "EZEKIEL HOUGHTON","MI",5,1641,1468
## "STEFANO LEE","ON",5,1411,1523
## "ANVIT RAO","MI",5,1365,1554
## "CAMERON WILLIAM MC LEMAN","MI",4.5,1712,1468
## "KENNETH J TACK","MI",4.5,1663,1506
## "TORRANCE HENRY JR","MI",4.5,1666,1498
## "BRADLEY SHAW","MI",4.5,1610,1515
## "ZACHARY JAMES HOUGHTON","MI",4.5,1220,1484
## "MIKE NIKITIN","MI",4,1604,1386
## "RONALD GRZEGORCZYK","MI",4,1629,1499
## "DAVID SUNDEEN","MI",4,1600,1480
## "DIPANKAR ROY","MI",4,1564,1426
## "JASON ZHENG","MI",4,1595,1411
## "DINH DANG BUI","ON",4,1563,1470
## "EUGENE L MCCLURE","MI",4,1555,1300
## "ALAN BUI","ON",4,1363,1214
## "MICHAEL R ALDRICH","MI",4,1229,1357
## "LOREN SCHWIEBERT","MI",3.5,1745,1363
## "MAX ZHU","ON",3.5,1579,1507
## "GAURAV GIDWANI","MI",3.5,1552,1222
## "SOFIA ADINA STANESCU-BELLU","MI",3.5,1507,1522
## "CHIEDOZIE OKORIE","MI",3.5,1602,1314
## "GEORGE AVERY JONES","ON",3.5,1522,1144
## "RISHI SHETTY","MI",3.5,1494,1260
## "JOSHUA PHILIP MATHEWS","ON",3.5,1441,1379
## "JADE GE","MI",3.5,1449,1277
## "MICHAEL JEFFERY THOMAS","MI",3.5,1399,1375
## "JOSHUA DAVID LEE","MI",3.5,1438,1150
## "SIDDHARTH JHA","MI",3.5,1355,1388
## "AMIYATOSH PWNANANDAM","MI",3.5,980,1385
## "BRIAN LIU","MI",3,1423,1539
## "JOEL R HENDON","MI",3,1436,1430
## "FOREST ZHANG","MI",3,1348,1391
## "KYLE WILLIAM MURPHY","MI",3,1403,1248
## "JARED GE","MI",3,1332,1150
## "ROBERT GLEN VASEY","MI",3,1283,1107
## "JUSTIN D SCHILLING","MI",3,1199,1327
## "DEREK YAN","MI",3,1242,1152
## "JACOB ALEXANDER LAVALLEY","MI",3,377,1358
## "ERIC WRIGHT","MI",2.5,1362,1392
## "DANIEL KHAIN","MI",2.5,1382,1356
## "MICHAEL J MARTIN","MI",2.5,1291,1286
## "SHIVAM JHA","MI",2.5,1056,1296
## "TEJAS AYYAGARI","MI",2.5,1011,1356
## "ETHAN GUO","MI",2.5,935,1495
## "JOSE C YBARRA","MI",2,1393,1345
## "LARRY HODGE","MI",2,1270,1206
## "ALEX KONG","MI",2,1186,1406
## "MARISA RICCI","MI",2,1153,1414
## "MICHAEL LU","MI",2,1092,1363
## "VIRAJ MOHILE","MI",2,917,1391
## "SEAN M MC CORMICK","MI",2,853,1319
## "JULIA SHEN","MI",1.5,967,1330
## "JEZZEL FARKAS","ON",1.5,955,1327
## "ASHWIN BALAJI","MI",1,1530,1186
## "THOMAS JOSEPH HOSMER","MI",1,1175,1350
## "BEN LI","MI",1,1163,1263
# Saves to computer
write.table(final_607_project_1, file = "final_607_project_1.csv", sep = ",")

Note that the echo = FALSE parameter was added to the code chunk to prevent printing of the R code that generated the plot.