Make sure tournamentinfo.txt is in the current directory. This text file will be loaded from the current directory
setwd("~/")
tinfo_ext <- read.table("tournamentinfo.txt", header=F, sep="|", as.is = TRUE, skip=4,fill=TRUE)
Check what was loaded to the dataframe
tinfo_ext
## V1
## 1 1
## 2 ON
## 3 -----------------------------------------------------------------------------------------
## 4 2
## 5 MI
## 6 -----------------------------------------------------------------------------------------
## 7 3
## 8 MI
## 9 -----------------------------------------------------------------------------------------
## 10 4
## 11 MI
## 12 -----------------------------------------------------------------------------------------
## 13 5
## 14 MI
## 15 -----------------------------------------------------------------------------------------
## 16 6
## 17 OH
## 18 -----------------------------------------------------------------------------------------
## 19 7
## 20 MI
## 21 -----------------------------------------------------------------------------------------
## 22 8
## 23 MI
## 24 -----------------------------------------------------------------------------------------
## 25 9
## 26 ON
## 27 -----------------------------------------------------------------------------------------
## 28 10
## 29 MI
## 30 -----------------------------------------------------------------------------------------
## 31 11
## 32 MI
## 33 -----------------------------------------------------------------------------------------
## 34 12
## 35 MI
## 36 -----------------------------------------------------------------------------------------
## 37 13
## 38 MI
## 39 -----------------------------------------------------------------------------------------
## 40 14
## 41 MI
## 42 -----------------------------------------------------------------------------------------
## 43 15
## 44 MI
## 45 -----------------------------------------------------------------------------------------
## 46 16
## 47 MI
## 48 -----------------------------------------------------------------------------------------
## 49 17
## 50 MI
## 51 -----------------------------------------------------------------------------------------
## 52 18
## 53 MI
## 54 -----------------------------------------------------------------------------------------
## 55 19
## 56 MI
## 57 -----------------------------------------------------------------------------------------
## 58 20
## 59 MI
## 60 -----------------------------------------------------------------------------------------
## 61 21
## 62 ON
## 63 -----------------------------------------------------------------------------------------
## 64 22
## 65 MI
## 66 -----------------------------------------------------------------------------------------
## 67 23
## 68 ON
## 69 -----------------------------------------------------------------------------------------
## 70 24
## 71 MI
## 72 -----------------------------------------------------------------------------------------
## 73 25
## 74 MI
## 75 -----------------------------------------------------------------------------------------
## 76 26
## 77 ON
## 78 -----------------------------------------------------------------------------------------
## 79 27
## 80 MI
## 81 -----------------------------------------------------------------------------------------
## 82 28
## 83 MI
## 84 -----------------------------------------------------------------------------------------
## 85 29
## 86 MI
## 87 -----------------------------------------------------------------------------------------
## 88 30
## 89 ON
## 90 -----------------------------------------------------------------------------------------
## 91 31
## 92 MI
## 93 -----------------------------------------------------------------------------------------
## 94 32
## 95 ON
## 96 -----------------------------------------------------------------------------------------
## 97 33
## 98 MI
## 99 -----------------------------------------------------------------------------------------
## 100 34
## 101 MI
## 102 -----------------------------------------------------------------------------------------
## 103 35
## 104 MI
## 105 -----------------------------------------------------------------------------------------
## 106 36
## 107 MI
## 108 -----------------------------------------------------------------------------------------
## 109 37
## 110 MI
## 111 -----------------------------------------------------------------------------------------
## 112 38
## 113 MI
## 114 -----------------------------------------------------------------------------------------
## 115 39
## 116 MI
## 117 -----------------------------------------------------------------------------------------
## 118 40
## 119 MI
## 120 -----------------------------------------------------------------------------------------
## 121 41
## 122 MI
## 123 -----------------------------------------------------------------------------------------
## 124 42
## 125 MI
## 126 -----------------------------------------------------------------------------------------
## 127 43
## 128 MI
## 129 -----------------------------------------------------------------------------------------
## 130 44
## 131 MI
## 132 -----------------------------------------------------------------------------------------
## 133 45
## 134 MI
## 135 -----------------------------------------------------------------------------------------
## 136 46
## 137 MI
## 138 -----------------------------------------------------------------------------------------
## 139 47
## 140 MI
## 141 -----------------------------------------------------------------------------------------
## 142 48
## 143 MI
## 144 -----------------------------------------------------------------------------------------
## 145 49
## 146 MI
## 147 -----------------------------------------------------------------------------------------
## 148 50
## 149 MI
## 150 -----------------------------------------------------------------------------------------
## 151 51
## 152 MI
## 153 -----------------------------------------------------------------------------------------
## 154 52
## 155 MI
## 156 -----------------------------------------------------------------------------------------
## 157 53
## 158 MI
## 159 -----------------------------------------------------------------------------------------
## 160 54
## 161 MI
## 162 -----------------------------------------------------------------------------------------
## 163 55
## 164 MI
## 165 -----------------------------------------------------------------------------------------
## 166 56
## 167 MI
## 168 -----------------------------------------------------------------------------------------
## 169 57
## 170 MI
## 171 -----------------------------------------------------------------------------------------
## 172 58
## 173 MI
## 174 -----------------------------------------------------------------------------------------
## 175 59
## 176 MI
## 177 -----------------------------------------------------------------------------------------
## 178 60
## 179 MI
## 180 -----------------------------------------------------------------------------------------
## 181 61
## 182 ON
## 183 -----------------------------------------------------------------------------------------
## 184 62
## 185 MI
## 186 -----------------------------------------------------------------------------------------
## 187 63
## 188 MI
## 189 -----------------------------------------------------------------------------------------
## 190 64
## 191 MI
## 192 -----------------------------------------------------------------------------------------
## V2 V3 V4 V5 V6 V7 V8
## 1 GARY HUA 6.0 W 39 W 21 W 18 W 14 W 7
## 2 15445895 / R: 1794 ->1817 N:2 W B W B W
## 3
## 4 DAKSHESH DARURI 6.0 W 63 W 58 L 4 W 17 W 16
## 5 14598900 / R: 1553 ->1663 N:2 B W B W B
## 6
## 7 ADITYA BAJAJ 6.0 L 8 W 61 W 25 W 21 W 11
## 8 14959604 / R: 1384 ->1640 N:2 W B W B W
## 9
## 10 PATRICK H SCHILLING 5.5 W 23 D 28 W 2 W 26 D 5
## 11 12616049 / R: 1716 ->1744 N:2 W B W B W
## 12
## 13 HANSHI ZUO 5.5 W 45 W 37 D 12 D 13 D 4
## 14 14601533 / R: 1655 ->1690 N:2 B W B W B
## 15
## 16 HANSEN SONG 5.0 W 34 D 29 L 11 W 35 D 10
## 17 15055204 / R: 1686 ->1687 N:3 W B W B B
## 18
## 19 GARY DEE SWATHELL 5.0 W 57 W 46 W 13 W 11 L 1
## 20 11146376 / R: 1649 ->1673 N:3 W B W B B
## 21
## 22 EZEKIEL HOUGHTON 5.0 W 3 W 32 L 14 L 9 W 47
## 23 15142253 / R: 1641P17->1657P24 N:3 B W B W B
## 24
## 25 STEFANO LEE 5.0 W 25 L 18 W 59 W 8 W 26
## 26 14954524 / R: 1411 ->1564 N:2 W B W B W
## 27
## 28 ANVIT RAO 5.0 D 16 L 19 W 55 W 31 D 6
## 29 14150362 / R: 1365 ->1544 N:3 W W B B W
## 30
## 31 CAMERON WILLIAM MC LEMAN 4.5 D 38 W 56 W 6 L 7 L 3
## 32 12581589 / R: 1712 ->1696 N:3 B W B W B
## 33
## 34 KENNETH J TACK 4.5 W 42 W 33 D 5 W 38 H
## 35 12681257 / R: 1663 ->1670 N:3 W B W B
## 36
## 37 TORRANCE HENRY JR 4.5 W 36 W 27 L 7 D 5 W 33
## 38 15082995 / R: 1666 ->1662 N:3 B W B B W
## 39
## 40 BRADLEY SHAW 4.5 W 54 W 44 W 8 L 1 D 27
## 41 10131499 / R: 1610 ->1618 N:3 W B W W B
## 42
## 43 ZACHARY JAMES HOUGHTON 4.5 D 19 L 16 W 30 L 22 W 54
## 44 15619130 / R: 1220P13->1416P20 N:3 B B W W B
## 45
## 46 MIKE NIKITIN 4.0 D 10 W 15 H W 39 L 2
## 47 10295068 / R: 1604 ->1613 N:3 B W B W
## 48
## 49 RONALD GRZEGORCZYK 4.0 W 48 W 41 L 26 L 2 W 23
## 50 10297702 / R: 1629 ->1610 N:3 W B W B W
## 51
## 52 DAVID SUNDEEN 4.0 W 47 W 9 L 1 W 32 L 19
## 53 11342094 / R: 1600 ->1600 N:3 B W B W B
## 54
## 55 DIPANKAR ROY 4.0 D 15 W 10 W 52 D 28 W 18
## 56 14862333 / R: 1564 ->1570 N:3 W B W B W
## 57
## 58 JASON ZHENG 4.0 L 40 W 49 W 23 W 41 W 28
## 59 14529060 / R: 1595 ->1569 N:4 W B W B W
## 60
## 61 DINH DANG BUI 4.0 W 43 L 1 W 47 L 3 W 40
## 62 15495066 / R: 1563P22->1562 N:3 B W B W W
## 63
## 64 EUGENE L MCCLURE 4.0 W 64 D 52 L 28 W 15 H
## 65 12405534 / R: 1555 ->1529 N:4 W B W B
## 66
## 67 ALAN BUI 4.0 L 4 W 43 L 20 W 58 L 17
## 68 15030142 / R: 1363 ->1371 B W B W B
## 69
## 70 MICHAEL R ALDRICH 4.0 L 28 L 47 W 43 L 25 W 60
## 71 13469010 / R: 1229 ->1300 N:4 B W B B W
## 72
## 73 LOREN SCHWIEBERT 3.5 L 9 W 53 L 3 W 24 D 34
## 74 12486656 / R: 1745 ->1681 N:4 B W B W B
## 75
## 76 MAX ZHU 3.5 W 49 W 40 W 17 L 4 L 9
## 77 15131520 / R: 1579 ->1564 N:4 B W B W B
## 78
## 79 GAURAV GIDWANI 3.5 W 51 L 13 W 46 W 37 D 14
## 80 14476567 / R: 1552 ->1539 N:4 W B W B W
## 81
## 82 SOFIA ADINA STANESCU-BELLU 3.5 W 24 D 4 W 22 D 19 L 20
## 83 14882954 / R: 1507 ->1513 N:3 W W B W B
## 84
## 85 CHIEDOZIE OKORIE 3.5 W 50 D 6 L 38 L 34 W 52
## 86 15323285 / R: 1602P6 ->1508P12 N:4 B W B W W
## 87
## 88 GEORGE AVERY JONES 3.5 L 52 D 64 L 15 W 55 L 31
## 89 12577178 / R: 1522 ->1444 W B B W W
## 90
## 91 RISHI SHETTY 3.5 L 58 D 55 W 64 L 10 W 30
## 92 15131618 / R: 1494 ->1444 B W B W B
## 93
## 94 JOSHUA PHILIP MATHEWS 3.5 W 61 L 8 W 44 L 18 W 51
## 95 14073750 / R: 1441 ->1433 N:4 W B W B W
## 96
## 97 JADE GE 3.5 W 60 L 12 W 50 D 36 L 13
## 98 14691842 / R: 1449 ->1421 B W B W B
## 99
## 100 MICHAEL JEFFERY THOMAS 3.5 L 6 W 60 L 37 W 29 D 25
## 101 15051807 / R: 1399 ->1400 B W B B W
## 102
## 103 JOSHUA DAVID LEE 3.5 L 46 L 38 W 56 L 6 W 57
## 104 14601397 / R: 1438 ->1392 W W B W B
## 105
## 106 SIDDHARTH JHA 3.5 L 13 W 57 W 51 D 33 H
## 107 14773163 / R: 1355 ->1367 N:4 W B W B
## 108
## 109 AMIYATOSH PWNANANDAM 3.5 B L 5 W 34 L 27 H
## 110 15489571 / R: 980P12->1077P17 B W W
## 111
## 112 BRIAN LIU 3.0 D 11 W 35 W 29 L 12 H
## 113 15108523 / R: 1423 ->1439 N:4 W B W W
## 114
## 115 JOEL R HENDON 3.0 L 1 W 54 W 40 L 16 W 44
## 116 12923035 / R: 1436P23->1413 N:4 B W B W B
## 117
## 118 FOREST ZHANG 3.0 W 20 L 26 L 39 W 59 L 21
## 119 14892710 / R: 1348 ->1346 B B W W B
## 120
## 121 KYLE WILLIAM MURPHY 3.0 W 59 L 17 W 58 L 20 X
## 122 15761443 / R: 1403P5 ->1341P9 B W B W
## 123
## 124 JARED GE 3.0 L 12 L 50 L 57 D 60 D 61
## 125 14462326 / R: 1332 ->1256 B W B B W
## 126
## 127 ROBERT GLEN VASEY 3.0 L 21 L 23 L 24 W 63 W 59
## 128 14101068 / R: 1283 ->1244 W B W W B
## 129
## 130 JUSTIN D SCHILLING 3.0 B L 14 L 32 W 53 L 39
## 131 15323504 / R: 1199 ->1199 W B B W
## 132
## 133 DEREK YAN 3.0 L 5 L 51 D 60 L 56 W 63
## 134 15372807 / R: 1242 ->1191 W B W B W
## 135
## 136 JACOB ALEXANDER LAVALLEY 3.0 W 35 L 7 L 27 L 50 W 64
## 137 15490981 / R: 377P3 ->1076P10 B W B W B
## 138
## 139 ERIC WRIGHT 2.5 L 18 W 24 L 21 W 61 L 8
## 140 12533115 / R: 1362 ->1341 W B W B W
## 141
## 142 DANIEL KHAIN 2.5 L 17 W 63 H D 52 H
## 143 14369165 / R: 1382 ->1335 B W B
## 144
## 145 MICHAEL J MARTIN 2.5 L 26 L 20 D 63 D 64 W 58
## 146 12531685 / R: 1291P12->1259P17 W W B W B
## 147
## 148 SHIVAM JHA 2.5 L 29 W 42 L 33 W 46 H
## 149 14773178 / R: 1056 ->1111 W B W B
## 150
## 151 TEJAS AYYAGARI 2.5 L 27 W 45 L 36 W 57 L 32
## 152 15205474 / R: 1011 ->1097 B W B W B
## 153
## 154 ETHAN GUO 2.5 W 30 D 22 L 19 D 48 L 29
## 155 14918803 / R: 935 ->1092 N:4 B W B W B
## 156
## 157 JOSE C YBARRA 2.0 H L 25 H L 44 U
## 158 12578849 / R: 1393 ->1359 B W
## 159
## 160 LARRY HODGE 2.0 L 14 L 39 L 61 B L 15
## 161 12836773 / R: 1270 ->1200 B B W W
## 162
## 163 ALEX KONG 2.0 L 62 D 31 L 10 L 30 B
## 164 15412571 / R: 1186 ->1163 W B W B
## 165
## 166 MARISA RICCI 2.0 H L 11 L 35 W 45 H
## 167 14679887 / R: 1153 ->1140 B W W
## 168
## 169 MICHAEL LU 2.0 L 7 L 36 W 42 L 51 L 35
## 170 15113330 / R: 1092 ->1079 B W W B W
## 171
## 172 VIRAJ MOHILE 2.0 W 31 L 2 L 41 L 23 L 49
## 173 14700365 / R: 917 -> 941 W B W B W
## 174
## 175 SEAN M MC CORMICK 2.0 L 41 B L 9 L 40 L 43
## 176 12841036 / R: 853 -> 878 W B B W
## 177
## 178 JULIA SHEN 1.5 L 33 L 34 D 45 D 42 L 24
## 179 14579262 / R: 967 -> 984 W B B W B
## 180
## 181 JEZZEL FARKAS 1.5 L 32 L 3 W 54 L 47 D 42
## 182 15771592 / R: 955P11-> 979P18 B W B W B
## 183
## 184 ASHWIN BALAJI 1.0 W 55 U U U U
## 185 15219542 / R: 1530 ->1535 B
## 186
## 187 THOMAS JOSEPH HOSMER 1.0 L 2 L 48 D 49 L 43 L 45
## 188 15057092 / R: 1175 ->1125 W B W B B
## 189
## 190 BEN LI 1.0 L 22 D 30 L 31 D 49 L 46
## 191 15006561 / R: 1163 ->1112 B W W B W
## 192
## V9 V10 V11
## 1 D 12 D 4 NA
## 2 B W NA
## 3 NA
## 4 W 20 W 7 NA
## 5 W B NA
## 6 NA
## 7 W 13 W 12 NA
## 8 B W NA
## 9 NA
## 10 W 19 D 1 NA
## 11 B B NA
## 12 NA
## 13 W 14 W 17 NA
## 14 W B NA
## 15 NA
## 16 W 27 W 21 NA
## 17 W B NA
## 18 NA
## 19 W 9 L 2 NA
## 20 W W NA
## 21 NA
## 22 W 28 W 19 NA
## 23 W W NA
## 24 NA
## 25 L 7 W 20 NA
## 26 B B NA
## 27 NA
## 28 W 25 W 18 NA
## 29 B W NA
## 30 NA
## 31 W 34 W 26 NA
## 32 W B NA
## 33 NA
## 34 D 1 L 3 NA
## 35 W B NA
## 36 NA
## 37 L 3 W 32 NA
## 38 W B NA
## 39 NA
## 40 L 5 W 31 NA
## 41 B W NA
## 42 NA
## 43 W 33 W 38 NA
## 44 B W NA
## 45 NA
## 46 W 36 U NA
## 47 B NA
## 48 NA
## 49 W 22 L 5 NA
## 50 B W NA
## 51 NA
## 52 W 38 L 10 NA
## 53 W B NA
## 54 NA
## 55 L 4 L 8 NA
## 56 W B NA
## 57 NA
## 58 L 2 L 9 NA
## 59 B W NA
## 60 NA
## 61 W 39 L 6 NA
## 62 B W NA
## 63 NA
## 64 L 17 W 40 NA
## 65 W B NA
## 66 NA
## 67 W 37 W 46 NA
## 68 W B NA
## 69 NA
## 70 W 44 W 39 NA
## 71 W B NA
## 72 NA
## 73 L 10 W 47 NA
## 74 W B NA
## 75 NA
## 76 D 32 L 11 NA
## 77 W W NA
## 78 NA
## 79 L 6 U NA
## 80 B NA
## 81 NA
## 82 L 8 D 36 NA
## 83 B W NA
## 84 NA
## 85 W 48 U NA
## 86 B NA
## 87 NA
## 88 W 61 W 50 NA
## 89 B B NA
## 90 NA
## 91 W 50 L 14 NA
## 92 W B NA
## 93 NA
## 94 D 26 L 13 NA
## 95 B W NA
## 96 NA
## 97 L 15 W 51 NA
## 98 W B NA
## 99 NA
## 100 L 11 W 52 NA
## 101 B W NA
## 102 NA
## 103 D 52 W 48 NA
## 104 B W NA
## 105 NA
## 106 L 16 D 28 NA
## 107 W B NA
## 108 NA
## 109 L 23 W 61 NA
## 110 B W NA
## 111 NA
## 112 L 18 L 15 NA
## 113 B B NA
## 114 NA
## 115 L 21 L 24 NA
## 116 W W NA
## 117 NA
## 118 W 56 L 22 NA
## 119 W W NA
## 120 NA
## 121 U U NA
## 122 NA
## 123 NA
## 124 W 64 W 56 NA
## 125 W B NA
## 126 NA
## 127 L 46 W 55 NA
## 128 B W NA
## 129 NA
## 130 L 24 W 59 NA
## 131 B W NA
## 132 NA
## 133 D 55 W 58 NA
## 134 B W NA
## 135 NA
## 136 W 43 L 23 NA
## 137 W W NA
## 138 NA
## 139 D 51 L 25 NA
## 140 B W NA
## 141 NA
## 142 L 29 L 35 NA
## 143 W B NA
## 144 NA
## 145 H U NA
## 146 NA
## 147 NA
## 148 L 31 L 30 NA
## 149 B W NA
## 150 NA
## 151 D 47 L 33 NA
## 152 W W NA
## 153 NA
## 154 D 35 L 34 NA
## 155 W B NA
## 156 NA
## 157 W 57 U NA
## 158 W NA
## 159 NA
## 160 L 59 W 64 NA
## 161 B W NA
## 162 NA
## 163 D 45 L 43 NA
## 164 W B NA
## 165 NA
## 166 L 40 L 42 NA
## 167 B W NA
## 168 NA
## 169 L 53 B NA
## 170 B NA
## 171 NA
## 172 B L 45 NA
## 173 B NA
## 174 NA
## 175 W 54 L 44 NA
## 176 W B NA
## 177 NA
## 178 H U NA
## 179 NA
## 180 NA
## 181 L 30 L 37 NA
## 182 W B NA
## 183 NA
## 184 U U NA
## 185 NA
## 186 NA
## 187 H U NA
## 188 NA
## 189 NA
## 190 L 42 L 54 NA
## 191 B B NA
## 192 NA
Clean extract - drop unnecessary rows and columns
#drop extraneous column
tinfo_ext$V11 <- NULL
#split datafrme into 2 (player info and state/rating info)
tinfo_players <- subset(tinfo_ext, as.numeric(rownames(tinfo_ext))%%3 == 1)
tinfo_st_rate <- subset(tinfo_ext, as.numeric(rownames(tinfo_ext))%%3 == 2)
#make sure player and state/rating dataframes have the same number of rows
#because the second one is an extension of the first
nrow(tinfo_st_rate)
## [1] 64
nrow(tinfo_players)
## [1] 64
Check split dataframes for data of interest
tinfo_st_rate
## V1 V2 V3 V4 V5 V6 V7
## 2 ON 15445895 / R: 1794 ->1817 N:2 W B W B
## 5 MI 14598900 / R: 1553 ->1663 N:2 B W B W
## 8 MI 14959604 / R: 1384 ->1640 N:2 W B W B
## 11 MI 12616049 / R: 1716 ->1744 N:2 W B W B
## 14 MI 14601533 / R: 1655 ->1690 N:2 B W B W
## 17 OH 15055204 / R: 1686 ->1687 N:3 W B W B
## 20 MI 11146376 / R: 1649 ->1673 N:3 W B W B
## 23 MI 15142253 / R: 1641P17->1657P24 N:3 B W B W
## 26 ON 14954524 / R: 1411 ->1564 N:2 W B W B
## 29 MI 14150362 / R: 1365 ->1544 N:3 W W B B
## 32 MI 12581589 / R: 1712 ->1696 N:3 B W B W
## 35 MI 12681257 / R: 1663 ->1670 N:3 W B W B
## 38 MI 15082995 / R: 1666 ->1662 N:3 B W B B
## 41 MI 10131499 / R: 1610 ->1618 N:3 W B W W
## 44 MI 15619130 / R: 1220P13->1416P20 N:3 B B W W
## 47 MI 10295068 / R: 1604 ->1613 N:3 B W B
## 50 MI 10297702 / R: 1629 ->1610 N:3 W B W B
## 53 MI 11342094 / R: 1600 ->1600 N:3 B W B W
## 56 MI 14862333 / R: 1564 ->1570 N:3 W B W B
## 59 MI 14529060 / R: 1595 ->1569 N:4 W B W B
## 62 ON 15495066 / R: 1563P22->1562 N:3 B W B W
## 65 MI 12405534 / R: 1555 ->1529 N:4 W B W B
## 68 ON 15030142 / R: 1363 ->1371 B W B W
## 71 MI 13469010 / R: 1229 ->1300 N:4 B W B B
## 74 MI 12486656 / R: 1745 ->1681 N:4 B W B W
## 77 ON 15131520 / R: 1579 ->1564 N:4 B W B W
## 80 MI 14476567 / R: 1552 ->1539 N:4 W B W B
## 83 MI 14882954 / R: 1507 ->1513 N:3 W W B W
## 86 MI 15323285 / R: 1602P6 ->1508P12 N:4 B W B W
## 89 ON 12577178 / R: 1522 ->1444 W B B W
## 92 MI 15131618 / R: 1494 ->1444 B W B W
## 95 ON 14073750 / R: 1441 ->1433 N:4 W B W B
## 98 MI 14691842 / R: 1449 ->1421 B W B W
## 101 MI 15051807 / R: 1399 ->1400 B W B B
## 104 MI 14601397 / R: 1438 ->1392 W W B W
## 107 MI 14773163 / R: 1355 ->1367 N:4 W B W B
## 110 MI 15489571 / R: 980P12->1077P17 B W W
## 113 MI 15108523 / R: 1423 ->1439 N:4 W B W W
## 116 MI 12923035 / R: 1436P23->1413 N:4 B W B W
## 119 MI 14892710 / R: 1348 ->1346 B B W W
## 122 MI 15761443 / R: 1403P5 ->1341P9 B W B W
## 125 MI 14462326 / R: 1332 ->1256 B W B B
## 128 MI 14101068 / R: 1283 ->1244 W B W W
## 131 MI 15323504 / R: 1199 ->1199 W B B
## 134 MI 15372807 / R: 1242 ->1191 W B W B
## 137 MI 15490981 / R: 377P3 ->1076P10 B W B W
## 140 MI 12533115 / R: 1362 ->1341 W B W B
## 143 MI 14369165 / R: 1382 ->1335 B W B
## 146 MI 12531685 / R: 1291P12->1259P17 W W B W
## 149 MI 14773178 / R: 1056 ->1111 W B W B
## 152 MI 15205474 / R: 1011 ->1097 B W B W
## 155 MI 14918803 / R: 935 ->1092 N:4 B W B W
## 158 MI 12578849 / R: 1393 ->1359 B W
## 161 MI 12836773 / R: 1270 ->1200 B B W
## 164 MI 15412571 / R: 1186 ->1163 W B W B
## 167 MI 14679887 / R: 1153 ->1140 B W W
## 170 MI 15113330 / R: 1092 ->1079 B W W B
## 173 MI 14700365 / R: 917 -> 941 W B W B
## 176 MI 12841036 / R: 853 -> 878 W B B
## 179 MI 14579262 / R: 967 -> 984 W B B W
## 182 ON 15771592 / R: 955P11-> 979P18 B W B W
## 185 MI 15219542 / R: 1530 ->1535 B
## 188 MI 15057092 / R: 1175 ->1125 W B W B
## 191 MI 15006561 / R: 1163 ->1112 B W W B
## V8 V9 V10
## 2 W B W
## 5 B W B
## 8 W B W
## 11 W B B
## 14 B W B
## 17 B W B
## 20 B W W
## 23 B W W
## 26 W B B
## 29 W B W
## 32 B W B
## 35 W B
## 38 W W B
## 41 B B W
## 44 B B W
## 47 W B
## 50 W B W
## 53 B W B
## 56 W W B
## 59 W B W
## 62 W B W
## 65 W B
## 68 B W B
## 71 W W B
## 74 B W B
## 77 B W W
## 80 W B
## 83 B B W
## 86 W B
## 89 W B B
## 92 B W B
## 95 W B W
## 98 B W B
## 101 W B W
## 104 B B W
## 107 W B
## 110 B W
## 113 B B
## 116 B W W
## 119 B W W
## 122
## 125 W W B
## 128 B B W
## 131 W B W
## 134 W B W
## 137 B W W
## 140 W B W
## 143 W B
## 146 B
## 149 B W
## 152 B W W
## 155 B W B
## 158 W
## 161 W B W
## 164 W B
## 167 B W
## 170 W B
## 173 W B
## 176 W W B
## 179 B
## 182 B W B
## 185
## 188 B
## 191 W B B
tinfo_players
## V1 V2 V3 V4 V5 V6 V7
## 1 1 GARY HUA 6.0 W 39 W 21 W 18 W 14
## 4 2 DAKSHESH DARURI 6.0 W 63 W 58 L 4 W 17
## 7 3 ADITYA BAJAJ 6.0 L 8 W 61 W 25 W 21
## 10 4 PATRICK H SCHILLING 5.5 W 23 D 28 W 2 W 26
## 13 5 HANSHI ZUO 5.5 W 45 W 37 D 12 D 13
## 16 6 HANSEN SONG 5.0 W 34 D 29 L 11 W 35
## 19 7 GARY DEE SWATHELL 5.0 W 57 W 46 W 13 W 11
## 22 8 EZEKIEL HOUGHTON 5.0 W 3 W 32 L 14 L 9
## 25 9 STEFANO LEE 5.0 W 25 L 18 W 59 W 8
## 28 10 ANVIT RAO 5.0 D 16 L 19 W 55 W 31
## 31 11 CAMERON WILLIAM MC LEMAN 4.5 D 38 W 56 W 6 L 7
## 34 12 KENNETH J TACK 4.5 W 42 W 33 D 5 W 38
## 37 13 TORRANCE HENRY JR 4.5 W 36 W 27 L 7 D 5
## 40 14 BRADLEY SHAW 4.5 W 54 W 44 W 8 L 1
## 43 15 ZACHARY JAMES HOUGHTON 4.5 D 19 L 16 W 30 L 22
## 46 16 MIKE NIKITIN 4.0 D 10 W 15 H W 39
## 49 17 RONALD GRZEGORCZYK 4.0 W 48 W 41 L 26 L 2
## 52 18 DAVID SUNDEEN 4.0 W 47 W 9 L 1 W 32
## 55 19 DIPANKAR ROY 4.0 D 15 W 10 W 52 D 28
## 58 20 JASON ZHENG 4.0 L 40 W 49 W 23 W 41
## 61 21 DINH DANG BUI 4.0 W 43 L 1 W 47 L 3
## 64 22 EUGENE L MCCLURE 4.0 W 64 D 52 L 28 W 15
## 67 23 ALAN BUI 4.0 L 4 W 43 L 20 W 58
## 70 24 MICHAEL R ALDRICH 4.0 L 28 L 47 W 43 L 25
## 73 25 LOREN SCHWIEBERT 3.5 L 9 W 53 L 3 W 24
## 76 26 MAX ZHU 3.5 W 49 W 40 W 17 L 4
## 79 27 GAURAV GIDWANI 3.5 W 51 L 13 W 46 W 37
## 82 28 SOFIA ADINA STANESCU-BELLU 3.5 W 24 D 4 W 22 D 19
## 85 29 CHIEDOZIE OKORIE 3.5 W 50 D 6 L 38 L 34
## 88 30 GEORGE AVERY JONES 3.5 L 52 D 64 L 15 W 55
## 91 31 RISHI SHETTY 3.5 L 58 D 55 W 64 L 10
## 94 32 JOSHUA PHILIP MATHEWS 3.5 W 61 L 8 W 44 L 18
## 97 33 JADE GE 3.5 W 60 L 12 W 50 D 36
## 100 34 MICHAEL JEFFERY THOMAS 3.5 L 6 W 60 L 37 W 29
## 103 35 JOSHUA DAVID LEE 3.5 L 46 L 38 W 56 L 6
## 106 36 SIDDHARTH JHA 3.5 L 13 W 57 W 51 D 33
## 109 37 AMIYATOSH PWNANANDAM 3.5 B L 5 W 34 L 27
## 112 38 BRIAN LIU 3.0 D 11 W 35 W 29 L 12
## 115 39 JOEL R HENDON 3.0 L 1 W 54 W 40 L 16
## 118 40 FOREST ZHANG 3.0 W 20 L 26 L 39 W 59
## 121 41 KYLE WILLIAM MURPHY 3.0 W 59 L 17 W 58 L 20
## 124 42 JARED GE 3.0 L 12 L 50 L 57 D 60
## 127 43 ROBERT GLEN VASEY 3.0 L 21 L 23 L 24 W 63
## 130 44 JUSTIN D SCHILLING 3.0 B L 14 L 32 W 53
## 133 45 DEREK YAN 3.0 L 5 L 51 D 60 L 56
## 136 46 JACOB ALEXANDER LAVALLEY 3.0 W 35 L 7 L 27 L 50
## 139 47 ERIC WRIGHT 2.5 L 18 W 24 L 21 W 61
## 142 48 DANIEL KHAIN 2.5 L 17 W 63 H D 52
## 145 49 MICHAEL J MARTIN 2.5 L 26 L 20 D 63 D 64
## 148 50 SHIVAM JHA 2.5 L 29 W 42 L 33 W 46
## 151 51 TEJAS AYYAGARI 2.5 L 27 W 45 L 36 W 57
## 154 52 ETHAN GUO 2.5 W 30 D 22 L 19 D 48
## 157 53 JOSE C YBARRA 2.0 H L 25 H L 44
## 160 54 LARRY HODGE 2.0 L 14 L 39 L 61 B
## 163 55 ALEX KONG 2.0 L 62 D 31 L 10 L 30
## 166 56 MARISA RICCI 2.0 H L 11 L 35 W 45
## 169 57 MICHAEL LU 2.0 L 7 L 36 W 42 L 51
## 172 58 VIRAJ MOHILE 2.0 W 31 L 2 L 41 L 23
## 175 59 SEAN M MC CORMICK 2.0 L 41 B L 9 L 40
## 178 60 JULIA SHEN 1.5 L 33 L 34 D 45 D 42
## 181 61 JEZZEL FARKAS 1.5 L 32 L 3 W 54 L 47
## 184 62 ASHWIN BALAJI 1.0 W 55 U U U
## 187 63 THOMAS JOSEPH HOSMER 1.0 L 2 L 48 D 49 L 43
## 190 64 BEN LI 1.0 L 22 D 30 L 31 D 49
## V8 V9 V10
## 1 W 7 D 12 D 4
## 4 W 16 W 20 W 7
## 7 W 11 W 13 W 12
## 10 D 5 W 19 D 1
## 13 D 4 W 14 W 17
## 16 D 10 W 27 W 21
## 19 L 1 W 9 L 2
## 22 W 47 W 28 W 19
## 25 W 26 L 7 W 20
## 28 D 6 W 25 W 18
## 31 L 3 W 34 W 26
## 34 H D 1 L 3
## 37 W 33 L 3 W 32
## 40 D 27 L 5 W 31
## 43 W 54 W 33 W 38
## 46 L 2 W 36 U
## 49 W 23 W 22 L 5
## 52 L 19 W 38 L 10
## 55 W 18 L 4 L 8
## 58 W 28 L 2 L 9
## 61 W 40 W 39 L 6
## 64 H L 17 W 40
## 67 L 17 W 37 W 46
## 70 W 60 W 44 W 39
## 73 D 34 L 10 W 47
## 76 L 9 D 32 L 11
## 79 D 14 L 6 U
## 82 L 20 L 8 D 36
## 85 W 52 W 48 U
## 88 L 31 W 61 W 50
## 91 W 30 W 50 L 14
## 94 W 51 D 26 L 13
## 97 L 13 L 15 W 51
## 100 D 25 L 11 W 52
## 103 W 57 D 52 W 48
## 106 H L 16 D 28
## 109 H L 23 W 61
## 112 H L 18 L 15
## 115 W 44 L 21 L 24
## 118 L 21 W 56 L 22
## 121 X U U
## 124 D 61 W 64 W 56
## 127 W 59 L 46 W 55
## 130 L 39 L 24 W 59
## 133 W 63 D 55 W 58
## 136 W 64 W 43 L 23
## 139 L 8 D 51 L 25
## 142 H L 29 L 35
## 145 W 58 H U
## 148 H L 31 L 30
## 151 L 32 D 47 L 33
## 154 L 29 D 35 L 34
## 157 U W 57 U
## 160 L 15 L 59 W 64
## 163 B D 45 L 43
## 166 H L 40 L 42
## 169 L 35 L 53 B
## 172 L 49 B L 45
## 175 L 43 W 54 L 44
## 178 L 24 H U
## 181 D 42 L 30 L 37
## 184 U U U
## 187 L 45 H U
## 190 L 46 L 42 L 54
Give more descriptive names to dataframe column names
library(plyr)
#rename df columns
t_pl <- rename(tinfo_players, c("V1"="Rank", "V2"="Player", "V3"="Points", "V4"="Round_1", "V5"="Round_2", "V6"="Round_3", "V7"="Round_4", "V8"="Round_5", "V9"="Round_6", "V10"="Round_7"))
t_pl
## Rank Player Points Round_1 Round_2
## 1 1 GARY HUA 6.0 W 39 W 21
## 4 2 DAKSHESH DARURI 6.0 W 63 W 58
## 7 3 ADITYA BAJAJ 6.0 L 8 W 61
## 10 4 PATRICK H SCHILLING 5.5 W 23 D 28
## 13 5 HANSHI ZUO 5.5 W 45 W 37
## 16 6 HANSEN SONG 5.0 W 34 D 29
## 19 7 GARY DEE SWATHELL 5.0 W 57 W 46
## 22 8 EZEKIEL HOUGHTON 5.0 W 3 W 32
## 25 9 STEFANO LEE 5.0 W 25 L 18
## 28 10 ANVIT RAO 5.0 D 16 L 19
## 31 11 CAMERON WILLIAM MC LEMAN 4.5 D 38 W 56
## 34 12 KENNETH J TACK 4.5 W 42 W 33
## 37 13 TORRANCE HENRY JR 4.5 W 36 W 27
## 40 14 BRADLEY SHAW 4.5 W 54 W 44
## 43 15 ZACHARY JAMES HOUGHTON 4.5 D 19 L 16
## 46 16 MIKE NIKITIN 4.0 D 10 W 15
## 49 17 RONALD GRZEGORCZYK 4.0 W 48 W 41
## 52 18 DAVID SUNDEEN 4.0 W 47 W 9
## 55 19 DIPANKAR ROY 4.0 D 15 W 10
## 58 20 JASON ZHENG 4.0 L 40 W 49
## 61 21 DINH DANG BUI 4.0 W 43 L 1
## 64 22 EUGENE L MCCLURE 4.0 W 64 D 52
## 67 23 ALAN BUI 4.0 L 4 W 43
## 70 24 MICHAEL R ALDRICH 4.0 L 28 L 47
## 73 25 LOREN SCHWIEBERT 3.5 L 9 W 53
## 76 26 MAX ZHU 3.5 W 49 W 40
## 79 27 GAURAV GIDWANI 3.5 W 51 L 13
## 82 28 SOFIA ADINA STANESCU-BELLU 3.5 W 24 D 4
## 85 29 CHIEDOZIE OKORIE 3.5 W 50 D 6
## 88 30 GEORGE AVERY JONES 3.5 L 52 D 64
## 91 31 RISHI SHETTY 3.5 L 58 D 55
## 94 32 JOSHUA PHILIP MATHEWS 3.5 W 61 L 8
## 97 33 JADE GE 3.5 W 60 L 12
## 100 34 MICHAEL JEFFERY THOMAS 3.5 L 6 W 60
## 103 35 JOSHUA DAVID LEE 3.5 L 46 L 38
## 106 36 SIDDHARTH JHA 3.5 L 13 W 57
## 109 37 AMIYATOSH PWNANANDAM 3.5 B L 5
## 112 38 BRIAN LIU 3.0 D 11 W 35
## 115 39 JOEL R HENDON 3.0 L 1 W 54
## 118 40 FOREST ZHANG 3.0 W 20 L 26
## 121 41 KYLE WILLIAM MURPHY 3.0 W 59 L 17
## 124 42 JARED GE 3.0 L 12 L 50
## 127 43 ROBERT GLEN VASEY 3.0 L 21 L 23
## 130 44 JUSTIN D SCHILLING 3.0 B L 14
## 133 45 DEREK YAN 3.0 L 5 L 51
## 136 46 JACOB ALEXANDER LAVALLEY 3.0 W 35 L 7
## 139 47 ERIC WRIGHT 2.5 L 18 W 24
## 142 48 DANIEL KHAIN 2.5 L 17 W 63
## 145 49 MICHAEL J MARTIN 2.5 L 26 L 20
## 148 50 SHIVAM JHA 2.5 L 29 W 42
## 151 51 TEJAS AYYAGARI 2.5 L 27 W 45
## 154 52 ETHAN GUO 2.5 W 30 D 22
## 157 53 JOSE C YBARRA 2.0 H L 25
## 160 54 LARRY HODGE 2.0 L 14 L 39
## 163 55 ALEX KONG 2.0 L 62 D 31
## 166 56 MARISA RICCI 2.0 H L 11
## 169 57 MICHAEL LU 2.0 L 7 L 36
## 172 58 VIRAJ MOHILE 2.0 W 31 L 2
## 175 59 SEAN M MC CORMICK 2.0 L 41 B
## 178 60 JULIA SHEN 1.5 L 33 L 34
## 181 61 JEZZEL FARKAS 1.5 L 32 L 3
## 184 62 ASHWIN BALAJI 1.0 W 55 U
## 187 63 THOMAS JOSEPH HOSMER 1.0 L 2 L 48
## 190 64 BEN LI 1.0 L 22 D 30
## Round_3 Round_4 Round_5 Round_6 Round_7
## 1 W 18 W 14 W 7 D 12 D 4
## 4 L 4 W 17 W 16 W 20 W 7
## 7 W 25 W 21 W 11 W 13 W 12
## 10 W 2 W 26 D 5 W 19 D 1
## 13 D 12 D 13 D 4 W 14 W 17
## 16 L 11 W 35 D 10 W 27 W 21
## 19 W 13 W 11 L 1 W 9 L 2
## 22 L 14 L 9 W 47 W 28 W 19
## 25 W 59 W 8 W 26 L 7 W 20
## 28 W 55 W 31 D 6 W 25 W 18
## 31 W 6 L 7 L 3 W 34 W 26
## 34 D 5 W 38 H D 1 L 3
## 37 L 7 D 5 W 33 L 3 W 32
## 40 W 8 L 1 D 27 L 5 W 31
## 43 W 30 L 22 W 54 W 33 W 38
## 46 H W 39 L 2 W 36 U
## 49 L 26 L 2 W 23 W 22 L 5
## 52 L 1 W 32 L 19 W 38 L 10
## 55 W 52 D 28 W 18 L 4 L 8
## 58 W 23 W 41 W 28 L 2 L 9
## 61 W 47 L 3 W 40 W 39 L 6
## 64 L 28 W 15 H L 17 W 40
## 67 L 20 W 58 L 17 W 37 W 46
## 70 W 43 L 25 W 60 W 44 W 39
## 73 L 3 W 24 D 34 L 10 W 47
## 76 W 17 L 4 L 9 D 32 L 11
## 79 W 46 W 37 D 14 L 6 U
## 82 W 22 D 19 L 20 L 8 D 36
## 85 L 38 L 34 W 52 W 48 U
## 88 L 15 W 55 L 31 W 61 W 50
## 91 W 64 L 10 W 30 W 50 L 14
## 94 W 44 L 18 W 51 D 26 L 13
## 97 W 50 D 36 L 13 L 15 W 51
## 100 L 37 W 29 D 25 L 11 W 52
## 103 W 56 L 6 W 57 D 52 W 48
## 106 W 51 D 33 H L 16 D 28
## 109 W 34 L 27 H L 23 W 61
## 112 W 29 L 12 H L 18 L 15
## 115 W 40 L 16 W 44 L 21 L 24
## 118 L 39 W 59 L 21 W 56 L 22
## 121 W 58 L 20 X U U
## 124 L 57 D 60 D 61 W 64 W 56
## 127 L 24 W 63 W 59 L 46 W 55
## 130 L 32 W 53 L 39 L 24 W 59
## 133 D 60 L 56 W 63 D 55 W 58
## 136 L 27 L 50 W 64 W 43 L 23
## 139 L 21 W 61 L 8 D 51 L 25
## 142 H D 52 H L 29 L 35
## 145 D 63 D 64 W 58 H U
## 148 L 33 W 46 H L 31 L 30
## 151 L 36 W 57 L 32 D 47 L 33
## 154 L 19 D 48 L 29 D 35 L 34
## 157 H L 44 U W 57 U
## 160 L 61 B L 15 L 59 W 64
## 163 L 10 L 30 B D 45 L 43
## 166 L 35 W 45 H L 40 L 42
## 169 W 42 L 51 L 35 L 53 B
## 172 L 41 L 23 L 49 B L 45
## 175 L 9 L 40 L 43 W 54 L 44
## 178 D 45 D 42 L 24 H U
## 181 W 54 L 47 D 42 L 30 L 37
## 184 U U U U U
## 187 D 49 L 43 L 45 H U
## 190 L 31 D 49 L 46 L 42 L 54
#drop unnecessary columns
tinfo_st_rate <- subset(tinfo_st_rate, select=c(V1,V2))
#rename df columns
t_sr <- rename(tinfo_st_rate, c("V1"="State", "V2"="Rating"))
t_sr
## State Rating
## 2 ON 15445895 / R: 1794 ->1817
## 5 MI 14598900 / R: 1553 ->1663
## 8 MI 14959604 / R: 1384 ->1640
## 11 MI 12616049 / R: 1716 ->1744
## 14 MI 14601533 / R: 1655 ->1690
## 17 OH 15055204 / R: 1686 ->1687
## 20 MI 11146376 / R: 1649 ->1673
## 23 MI 15142253 / R: 1641P17->1657P24
## 26 ON 14954524 / R: 1411 ->1564
## 29 MI 14150362 / R: 1365 ->1544
## 32 MI 12581589 / R: 1712 ->1696
## 35 MI 12681257 / R: 1663 ->1670
## 38 MI 15082995 / R: 1666 ->1662
## 41 MI 10131499 / R: 1610 ->1618
## 44 MI 15619130 / R: 1220P13->1416P20
## 47 MI 10295068 / R: 1604 ->1613
## 50 MI 10297702 / R: 1629 ->1610
## 53 MI 11342094 / R: 1600 ->1600
## 56 MI 14862333 / R: 1564 ->1570
## 59 MI 14529060 / R: 1595 ->1569
## 62 ON 15495066 / R: 1563P22->1562
## 65 MI 12405534 / R: 1555 ->1529
## 68 ON 15030142 / R: 1363 ->1371
## 71 MI 13469010 / R: 1229 ->1300
## 74 MI 12486656 / R: 1745 ->1681
## 77 ON 15131520 / R: 1579 ->1564
## 80 MI 14476567 / R: 1552 ->1539
## 83 MI 14882954 / R: 1507 ->1513
## 86 MI 15323285 / R: 1602P6 ->1508P12
## 89 ON 12577178 / R: 1522 ->1444
## 92 MI 15131618 / R: 1494 ->1444
## 95 ON 14073750 / R: 1441 ->1433
## 98 MI 14691842 / R: 1449 ->1421
## 101 MI 15051807 / R: 1399 ->1400
## 104 MI 14601397 / R: 1438 ->1392
## 107 MI 14773163 / R: 1355 ->1367
## 110 MI 15489571 / R: 980P12->1077P17
## 113 MI 15108523 / R: 1423 ->1439
## 116 MI 12923035 / R: 1436P23->1413
## 119 MI 14892710 / R: 1348 ->1346
## 122 MI 15761443 / R: 1403P5 ->1341P9
## 125 MI 14462326 / R: 1332 ->1256
## 128 MI 14101068 / R: 1283 ->1244
## 131 MI 15323504 / R: 1199 ->1199
## 134 MI 15372807 / R: 1242 ->1191
## 137 MI 15490981 / R: 377P3 ->1076P10
## 140 MI 12533115 / R: 1362 ->1341
## 143 MI 14369165 / R: 1382 ->1335
## 146 MI 12531685 / R: 1291P12->1259P17
## 149 MI 14773178 / R: 1056 ->1111
## 152 MI 15205474 / R: 1011 ->1097
## 155 MI 14918803 / R: 935 ->1092
## 158 MI 12578849 / R: 1393 ->1359
## 161 MI 12836773 / R: 1270 ->1200
## 164 MI 15412571 / R: 1186 ->1163
## 167 MI 14679887 / R: 1153 ->1140
## 170 MI 15113330 / R: 1092 ->1079
## 173 MI 14700365 / R: 917 -> 941
## 176 MI 12841036 / R: 853 -> 878
## 179 MI 14579262 / R: 967 -> 984
## 182 ON 15771592 / R: 955P11-> 979P18
## 185 MI 15219542 / R: 1530 ->1535
## 188 MI 15057092 / R: 1175 ->1125
## 191 MI 15006561 / R: 1163 ->1112
#list new df names
names(t_pl)
## [1] "Rank" "Player" "Points" "Round_1" "Round_2" "Round_3" "Round_4"
## [8] "Round_5" "Round_6" "Round_7"
names(t_sr)
## [1] "State" "Rating"
Further clean data from columns extracting only data of interest
library(stringr)
#extract only the pre-rating number from its set position
t_sr$Rating <- substr(t_sr$Rating, 16, 19)
t_sr$Rating
## [1] "1794" "1553" "1384" "1716" "1655" "1686" "1649" "1641" "1411" "1365"
## [11] "1712" "1663" "1666" "1610" "1220" "1604" "1629" "1600" "1564" "1595"
## [21] "1563" "1555" "1363" "1229" "1745" "1579" "1552" "1507" "1602" "1522"
## [31] "1494" "1441" "1449" "1399" "1438" "1355" " 980" "1423" "1436" "1348"
## [41] "1403" "1332" "1283" "1199" "1242" " 377" "1362" "1382" "1291" "1056"
## [51] "1011" " 935" "1393" "1270" "1186" "1153" "1092" " 917" " 853" " 967"
## [61] " 955" "1530" "1175" "1163"
Pick only the player’s opponent pre-tour rating (numeric field) from the round (1-7) columns
t_pl$Round_1 <- unlist(str_extract(t_pl$Round_1, "\\d+"))
t_pl$Round_2 <- unlist(str_extract(t_pl$Round_2, "\\d+"))
t_pl$Round_3 <- unlist(str_extract(t_pl$Round_3, "\\d+"))
t_pl$Round_4 <- unlist(str_extract(t_pl$Round_4, "\\d+"))
t_pl$Round_5 <- unlist(str_extract(t_pl$Round_5, "\\d+"))
t_pl$Round_6 <- unlist(str_extract(t_pl$Round_6, "\\d+"))
t_pl$Round_7 <- unlist(str_extract(t_pl$Round_7, "\\d+"))
t_pl
## Rank Player Points Round_1 Round_2
## 1 1 GARY HUA 6.0 39 21
## 4 2 DAKSHESH DARURI 6.0 63 58
## 7 3 ADITYA BAJAJ 6.0 8 61
## 10 4 PATRICK H SCHILLING 5.5 23 28
## 13 5 HANSHI ZUO 5.5 45 37
## 16 6 HANSEN SONG 5.0 34 29
## 19 7 GARY DEE SWATHELL 5.0 57 46
## 22 8 EZEKIEL HOUGHTON 5.0 3 32
## 25 9 STEFANO LEE 5.0 25 18
## 28 10 ANVIT RAO 5.0 16 19
## 31 11 CAMERON WILLIAM MC LEMAN 4.5 38 56
## 34 12 KENNETH J TACK 4.5 42 33
## 37 13 TORRANCE HENRY JR 4.5 36 27
## 40 14 BRADLEY SHAW 4.5 54 44
## 43 15 ZACHARY JAMES HOUGHTON 4.5 19 16
## 46 16 MIKE NIKITIN 4.0 10 15
## 49 17 RONALD GRZEGORCZYK 4.0 48 41
## 52 18 DAVID SUNDEEN 4.0 47 9
## 55 19 DIPANKAR ROY 4.0 15 10
## 58 20 JASON ZHENG 4.0 40 49
## 61 21 DINH DANG BUI 4.0 43 1
## 64 22 EUGENE L MCCLURE 4.0 64 52
## 67 23 ALAN BUI 4.0 4 43
## 70 24 MICHAEL R ALDRICH 4.0 28 47
## 73 25 LOREN SCHWIEBERT 3.5 9 53
## 76 26 MAX ZHU 3.5 49 40
## 79 27 GAURAV GIDWANI 3.5 51 13
## 82 28 SOFIA ADINA STANESCU-BELLU 3.5 24 4
## 85 29 CHIEDOZIE OKORIE 3.5 50 6
## 88 30 GEORGE AVERY JONES 3.5 52 64
## 91 31 RISHI SHETTY 3.5 58 55
## 94 32 JOSHUA PHILIP MATHEWS 3.5 61 8
## 97 33 JADE GE 3.5 60 12
## 100 34 MICHAEL JEFFERY THOMAS 3.5 6 60
## 103 35 JOSHUA DAVID LEE 3.5 46 38
## 106 36 SIDDHARTH JHA 3.5 13 57
## 109 37 AMIYATOSH PWNANANDAM 3.5 <NA> 5
## 112 38 BRIAN LIU 3.0 11 35
## 115 39 JOEL R HENDON 3.0 1 54
## 118 40 FOREST ZHANG 3.0 20 26
## 121 41 KYLE WILLIAM MURPHY 3.0 59 17
## 124 42 JARED GE 3.0 12 50
## 127 43 ROBERT GLEN VASEY 3.0 21 23
## 130 44 JUSTIN D SCHILLING 3.0 <NA> 14
## 133 45 DEREK YAN 3.0 5 51
## 136 46 JACOB ALEXANDER LAVALLEY 3.0 35 7
## 139 47 ERIC WRIGHT 2.5 18 24
## 142 48 DANIEL KHAIN 2.5 17 63
## 145 49 MICHAEL J MARTIN 2.5 26 20
## 148 50 SHIVAM JHA 2.5 29 42
## 151 51 TEJAS AYYAGARI 2.5 27 45
## 154 52 ETHAN GUO 2.5 30 22
## 157 53 JOSE C YBARRA 2.0 <NA> 25
## 160 54 LARRY HODGE 2.0 14 39
## 163 55 ALEX KONG 2.0 62 31
## 166 56 MARISA RICCI 2.0 <NA> 11
## 169 57 MICHAEL LU 2.0 7 36
## 172 58 VIRAJ MOHILE 2.0 31 2
## 175 59 SEAN M MC CORMICK 2.0 41 <NA>
## 178 60 JULIA SHEN 1.5 33 34
## 181 61 JEZZEL FARKAS 1.5 32 3
## 184 62 ASHWIN BALAJI 1.0 55 <NA>
## 187 63 THOMAS JOSEPH HOSMER 1.0 2 48
## 190 64 BEN LI 1.0 22 30
## Round_3 Round_4 Round_5 Round_6 Round_7
## 1 18 14 7 12 4
## 4 4 17 16 20 7
## 7 25 21 11 13 12
## 10 2 26 5 19 1
## 13 12 13 4 14 17
## 16 11 35 10 27 21
## 19 13 11 1 9 2
## 22 14 9 47 28 19
## 25 59 8 26 7 20
## 28 55 31 6 25 18
## 31 6 7 3 34 26
## 34 5 38 <NA> 1 3
## 37 7 5 33 3 32
## 40 8 1 27 5 31
## 43 30 22 54 33 38
## 46 <NA> 39 2 36 <NA>
## 49 26 2 23 22 5
## 52 1 32 19 38 10
## 55 52 28 18 4 8
## 58 23 41 28 2 9
## 61 47 3 40 39 6
## 64 28 15 <NA> 17 40
## 67 20 58 17 37 46
## 70 43 25 60 44 39
## 73 3 24 34 10 47
## 76 17 4 9 32 11
## 79 46 37 14 6 <NA>
## 82 22 19 20 8 36
## 85 38 34 52 48 <NA>
## 88 15 55 31 61 50
## 91 64 10 30 50 14
## 94 44 18 51 26 13
## 97 50 36 13 15 51
## 100 37 29 25 11 52
## 103 56 6 57 52 48
## 106 51 33 <NA> 16 28
## 109 34 27 <NA> 23 61
## 112 29 12 <NA> 18 15
## 115 40 16 44 21 24
## 118 39 59 21 56 22
## 121 58 20 <NA> <NA> <NA>
## 124 57 60 61 64 56
## 127 24 63 59 46 55
## 130 32 53 39 24 59
## 133 60 56 63 55 58
## 136 27 50 64 43 23
## 139 21 61 8 51 25
## 142 <NA> 52 <NA> 29 35
## 145 63 64 58 <NA> <NA>
## 148 33 46 <NA> 31 30
## 151 36 57 32 47 33
## 154 19 48 29 35 34
## 157 <NA> 44 <NA> 57 <NA>
## 160 61 <NA> 15 59 64
## 163 10 30 <NA> 45 43
## 166 35 45 <NA> 40 42
## 169 42 51 35 53 <NA>
## 172 41 23 49 <NA> 45
## 175 9 40 43 54 44
## 178 45 42 24 <NA> <NA>
## 181 54 47 42 30 37
## 184 <NA> <NA> <NA> <NA> <NA>
## 187 49 43 45 <NA> <NA>
## 190 31 49 46 42 54
Append opponent’s pre-tour rating (for all 7 rounds) to the player’s state/pre-rating dataframe
t_sr$ORa_R1 <- as.numeric(t_sr$Rating[as.numeric(t_pl$Round_1)])
t_sr$ORa_R2 <- as.numeric(t_sr$Rating[as.numeric(t_pl$Round_2)])
t_sr$ORa_R3 <- as.numeric(t_sr$Rating[as.numeric(t_pl$Round_3)])
t_sr$ORa_R4 <- as.numeric(t_sr$Rating[as.numeric(t_pl$Round_4)])
t_sr$ORa_R5 <- as.numeric(t_sr$Rating[as.numeric(t_pl$Round_5)])
t_sr$ORa_R6 <- as.numeric(t_sr$Rating[as.numeric(t_pl$Round_6)])
t_sr$ORa_R7 <- as.numeric(t_sr$Rating[as.numeric(t_pl$Round_7)])
t_sr
## State Rating ORa_R1 ORa_R2 ORa_R3 ORa_R4 ORa_R5 ORa_R6 ORa_R7
## 2 ON 1794 1436 1563 1600 1610 1649 1663 1716
## 5 MI 1553 1175 917 1716 1629 1604 1595 1649
## 8 MI 1384 1641 955 1745 1563 1712 1666 1663
## 11 MI 1716 1363 1507 1553 1579 1655 1564 1794
## 14 MI 1655 1242 980 1663 1666 1716 1610 1629
## 17 OH 1686 1399 1602 1712 1438 1365 1552 1563
## 20 MI 1649 1092 377 1666 1712 1794 1411 1553
## 23 MI 1641 1384 1441 1610 1411 1362 1507 1564
## 26 ON 1411 1745 1600 853 1641 1579 1649 1595
## 29 MI 1365 1604 1564 1186 1494 1686 1745 1600
## 32 MI 1712 1423 1153 1686 1649 1384 1399 1579
## 35 MI 1663 1332 1449 1655 1423 NA 1794 1384
## 38 MI 1666 1355 1552 1649 1655 1449 1384 1441
## 41 MI 1610 1270 1199 1641 1794 1552 1655 1494
## 44 MI 1220 1564 1604 1522 1555 1270 1449 1423
## 47 MI 1604 1365 1220 NA 1436 1553 1355 NA
## 50 MI 1629 1382 1403 1579 1553 1363 1555 1655
## 53 MI 1600 1362 1411 1794 1441 1564 1423 1365
## 56 MI 1564 1220 1365 935 1507 1600 1716 1641
## 59 MI 1595 1348 1291 1363 1403 1507 1553 1411
## 62 ON 1563 1283 1794 1362 1384 1348 1436 1686
## 65 MI 1555 1163 935 1507 1220 NA 1629 1348
## 68 ON 1363 1716 1283 1595 917 1629 980 377
## 71 MI 1229 1507 1362 1283 1745 967 1199 1436
## 74 MI 1745 1411 1393 1384 1229 1399 1365 1362
## 77 ON 1579 1291 1348 1629 1716 1411 1441 1712
## 80 MI 1552 1011 1666 377 980 1610 1686 NA
## 83 MI 1507 1229 1716 1555 1564 1595 1641 1355
## 86 MI 1602 1056 1686 1423 1399 935 1382 NA
## 89 ON 1522 935 1163 1220 1186 1494 955 1056
## 92 MI 1494 917 1186 1163 1365 1522 1056 1610
## 95 ON 1441 955 1641 1199 1600 1011 1579 1666
## 98 MI 1449 967 1663 1056 1355 1666 1220 1011
## 101 MI 1399 1686 967 980 1602 1745 1712 935
## 104 MI 1438 377 1423 1153 1686 1092 935 1382
## 107 MI 1355 1666 1092 1011 1449 NA 1604 1507
## 110 MI 980 NA 1655 1399 1552 NA 1363 955
## 113 MI 1423 1712 1438 1602 1663 NA 1600 1220
## 116 MI 1436 1794 1270 1348 1604 1199 1563 1229
## 119 MI 1348 1595 1579 1436 853 1563 1153 1555
## 122 MI 1403 853 1629 917 1595 NA NA NA
## 125 MI 1332 1663 1056 1092 967 955 1163 1153
## 128 MI 1283 1563 1363 1229 1175 853 377 1186
## 131 MI 1199 NA 1610 1441 1393 1436 1229 853
## 134 MI 1242 1655 1011 967 1153 1175 1186 917
## 137 MI 377 1438 1649 1552 1056 1163 1283 1363
## 140 MI 1362 1600 1229 1563 955 1641 1011 1745
## 143 MI 1382 1629 1175 NA 935 NA 1602 1438
## 146 MI 1291 1579 1595 1175 1163 917 NA NA
## 149 MI 1056 1602 1332 1449 377 NA 1494 1522
## 152 MI 1011 1552 1242 1355 1092 1441 1362 1449
## 155 MI 935 1522 1555 1564 1382 1602 1438 1399
## 158 MI 1393 NA 1745 NA 1199 NA 1092 NA
## 161 MI 1270 1610 1436 955 NA 1220 853 1163
## 164 MI 1186 1530 1494 1365 1522 NA 1242 1283
## 167 MI 1153 NA 1712 1438 1242 NA 1348 1332
## 170 MI 1092 1649 1355 1332 1011 1438 1393 NA
## 173 MI 917 1494 1553 1403 1363 1291 NA 1242
## 176 MI 853 1403 NA 1411 1348 1283 1270 1199
## 179 MI 967 1449 1399 1242 1332 1229 NA NA
## 182 ON 955 1441 1384 1270 1362 1332 1522 980
## 185 MI 1530 1186 NA NA NA NA NA NA
## 188 MI 1175 1553 1382 1291 1283 1242 NA NA
## 191 MI 1163 1555 1522 1494 1291 377 1332 1270
compute average opponent rating (for all 7 rounds) and add as new column in the state/pre-rating dataframe
t_sr$ORa_Ave <- round(rowMeans(subset(t_sr, select = c(3, 4, 5, 6, 7, 8, 9)), na.rm = TRUE))
t_sr
## State Rating ORa_R1 ORa_R2 ORa_R3 ORa_R4 ORa_R5 ORa_R6 ORa_R7 ORa_Ave
## 2 ON 1794 1436 1563 1600 1610 1649 1663 1716 1605
## 5 MI 1553 1175 917 1716 1629 1604 1595 1649 1469
## 8 MI 1384 1641 955 1745 1563 1712 1666 1663 1564
## 11 MI 1716 1363 1507 1553 1579 1655 1564 1794 1574
## 14 MI 1655 1242 980 1663 1666 1716 1610 1629 1501
## 17 OH 1686 1399 1602 1712 1438 1365 1552 1563 1519
## 20 MI 1649 1092 377 1666 1712 1794 1411 1553 1372
## 23 MI 1641 1384 1441 1610 1411 1362 1507 1564 1468
## 26 ON 1411 1745 1600 853 1641 1579 1649 1595 1523
## 29 MI 1365 1604 1564 1186 1494 1686 1745 1600 1554
## 32 MI 1712 1423 1153 1686 1649 1384 1399 1579 1468
## 35 MI 1663 1332 1449 1655 1423 NA 1794 1384 1506
## 38 MI 1666 1355 1552 1649 1655 1449 1384 1441 1498
## 41 MI 1610 1270 1199 1641 1794 1552 1655 1494 1515
## 44 MI 1220 1564 1604 1522 1555 1270 1449 1423 1484
## 47 MI 1604 1365 1220 NA 1436 1553 1355 NA 1386
## 50 MI 1629 1382 1403 1579 1553 1363 1555 1655 1499
## 53 MI 1600 1362 1411 1794 1441 1564 1423 1365 1480
## 56 MI 1564 1220 1365 935 1507 1600 1716 1641 1426
## 59 MI 1595 1348 1291 1363 1403 1507 1553 1411 1411
## 62 ON 1563 1283 1794 1362 1384 1348 1436 1686 1470
## 65 MI 1555 1163 935 1507 1220 NA 1629 1348 1300
## 68 ON 1363 1716 1283 1595 917 1629 980 377 1214
## 71 MI 1229 1507 1362 1283 1745 967 1199 1436 1357
## 74 MI 1745 1411 1393 1384 1229 1399 1365 1362 1363
## 77 ON 1579 1291 1348 1629 1716 1411 1441 1712 1507
## 80 MI 1552 1011 1666 377 980 1610 1686 NA 1222
## 83 MI 1507 1229 1716 1555 1564 1595 1641 1355 1522
## 86 MI 1602 1056 1686 1423 1399 935 1382 NA 1314
## 89 ON 1522 935 1163 1220 1186 1494 955 1056 1144
## 92 MI 1494 917 1186 1163 1365 1522 1056 1610 1260
## 95 ON 1441 955 1641 1199 1600 1011 1579 1666 1379
## 98 MI 1449 967 1663 1056 1355 1666 1220 1011 1277
## 101 MI 1399 1686 967 980 1602 1745 1712 935 1375
## 104 MI 1438 377 1423 1153 1686 1092 935 1382 1150
## 107 MI 1355 1666 1092 1011 1449 NA 1604 1507 1388
## 110 MI 980 NA 1655 1399 1552 NA 1363 955 1385
## 113 MI 1423 1712 1438 1602 1663 NA 1600 1220 1539
## 116 MI 1436 1794 1270 1348 1604 1199 1563 1229 1430
## 119 MI 1348 1595 1579 1436 853 1563 1153 1555 1391
## 122 MI 1403 853 1629 917 1595 NA NA NA 1248
## 125 MI 1332 1663 1056 1092 967 955 1163 1153 1150
## 128 MI 1283 1563 1363 1229 1175 853 377 1186 1107
## 131 MI 1199 NA 1610 1441 1393 1436 1229 853 1327
## 134 MI 1242 1655 1011 967 1153 1175 1186 917 1152
## 137 MI 377 1438 1649 1552 1056 1163 1283 1363 1358
## 140 MI 1362 1600 1229 1563 955 1641 1011 1745 1392
## 143 MI 1382 1629 1175 NA 935 NA 1602 1438 1356
## 146 MI 1291 1579 1595 1175 1163 917 NA NA 1286
## 149 MI 1056 1602 1332 1449 377 NA 1494 1522 1296
## 152 MI 1011 1552 1242 1355 1092 1441 1362 1449 1356
## 155 MI 935 1522 1555 1564 1382 1602 1438 1399 1495
## 158 MI 1393 NA 1745 NA 1199 NA 1092 NA 1345
## 161 MI 1270 1610 1436 955 NA 1220 853 1163 1206
## 164 MI 1186 1530 1494 1365 1522 NA 1242 1283 1406
## 167 MI 1153 NA 1712 1438 1242 NA 1348 1332 1414
## 170 MI 1092 1649 1355 1332 1011 1438 1393 NA 1363
## 173 MI 917 1494 1553 1403 1363 1291 NA 1242 1391
## 176 MI 853 1403 NA 1411 1348 1283 1270 1199 1319
## 179 MI 967 1449 1399 1242 1332 1229 NA NA 1330
## 182 ON 955 1441 1384 1270 1362 1332 1522 980 1327
## 185 MI 1530 1186 NA NA NA NA NA NA 1186
## 188 MI 1175 1553 1382 1291 1283 1242 NA NA 1350
## 191 MI 1163 1555 1522 1494 1291 377 1332 1270 1263
combine selected columns from the player info and state/pre-rating dataframes to produce the dataframe that contains only the data of interest
tinfo_out<-data.frame(Player=t_pl$Player, State=t_sr$State, Points=t_pl$Points, "Pre-Tour Rating"=t_sr$Rating,"Opp Pre-Tour Rating"=t_sr$ORa_Ave)
tinfo_out
## Player State Points Pre.Tour.Rating
## 1 GARY HUA ON 6.0 1794
## 2 DAKSHESH DARURI MI 6.0 1553
## 3 ADITYA BAJAJ MI 6.0 1384
## 4 PATRICK H SCHILLING MI 5.5 1716
## 5 HANSHI ZUO MI 5.5 1655
## 6 HANSEN SONG OH 5.0 1686
## 7 GARY DEE SWATHELL MI 5.0 1649
## 8 EZEKIEL HOUGHTON MI 5.0 1641
## 9 STEFANO LEE ON 5.0 1411
## 10 ANVIT RAO MI 5.0 1365
## 11 CAMERON WILLIAM MC LEMAN MI 4.5 1712
## 12 KENNETH J TACK MI 4.5 1663
## 13 TORRANCE HENRY JR MI 4.5 1666
## 14 BRADLEY SHAW MI 4.5 1610
## 15 ZACHARY JAMES HOUGHTON MI 4.5 1220
## 16 MIKE NIKITIN MI 4.0 1604
## 17 RONALD GRZEGORCZYK MI 4.0 1629
## 18 DAVID SUNDEEN MI 4.0 1600
## 19 DIPANKAR ROY MI 4.0 1564
## 20 JASON ZHENG MI 4.0 1595
## 21 DINH DANG BUI ON 4.0 1563
## 22 EUGENE L MCCLURE MI 4.0 1555
## 23 ALAN BUI ON 4.0 1363
## 24 MICHAEL R ALDRICH MI 4.0 1229
## 25 LOREN SCHWIEBERT MI 3.5 1745
## 26 MAX ZHU ON 3.5 1579
## 27 GAURAV GIDWANI MI 3.5 1552
## 28 SOFIA ADINA STANESCU-BELLU MI 3.5 1507
## 29 CHIEDOZIE OKORIE MI 3.5 1602
## 30 GEORGE AVERY JONES ON 3.5 1522
## 31 RISHI SHETTY MI 3.5 1494
## 32 JOSHUA PHILIP MATHEWS ON 3.5 1441
## 33 JADE GE MI 3.5 1449
## 34 MICHAEL JEFFERY THOMAS MI 3.5 1399
## 35 JOSHUA DAVID LEE MI 3.5 1438
## 36 SIDDHARTH JHA MI 3.5 1355
## 37 AMIYATOSH PWNANANDAM MI 3.5 980
## 38 BRIAN LIU MI 3.0 1423
## 39 JOEL R HENDON MI 3.0 1436
## 40 FOREST ZHANG MI 3.0 1348
## 41 KYLE WILLIAM MURPHY MI 3.0 1403
## 42 JARED GE MI 3.0 1332
## 43 ROBERT GLEN VASEY MI 3.0 1283
## 44 JUSTIN D SCHILLING MI 3.0 1199
## 45 DEREK YAN MI 3.0 1242
## 46 JACOB ALEXANDER LAVALLEY MI 3.0 377
## 47 ERIC WRIGHT MI 2.5 1362
## 48 DANIEL KHAIN MI 2.5 1382
## 49 MICHAEL J MARTIN MI 2.5 1291
## 50 SHIVAM JHA MI 2.5 1056
## 51 TEJAS AYYAGARI MI 2.5 1011
## 52 ETHAN GUO MI 2.5 935
## 53 JOSE C YBARRA MI 2.0 1393
## 54 LARRY HODGE MI 2.0 1270
## 55 ALEX KONG MI 2.0 1186
## 56 MARISA RICCI MI 2.0 1153
## 57 MICHAEL LU MI 2.0 1092
## 58 VIRAJ MOHILE MI 2.0 917
## 59 SEAN M MC CORMICK MI 2.0 853
## 60 JULIA SHEN MI 1.5 967
## 61 JEZZEL FARKAS ON 1.5 955
## 62 ASHWIN BALAJI MI 1.0 1530
## 63 THOMAS JOSEPH HOSMER MI 1.0 1175
## 64 BEN LI MI 1.0 1163
## Opp.Pre.Tour.Rating
## 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
output dataframe to a csv file
write.csv(tinfo_out, file="tinfo.csv")