This script builds on top of a previous script to extract actions and reactions from the notes on fighter X1 and X2 in the UFC. These extracted features are used as dummy variables to predict the outcome of a landed hit or other selected target variable out of the given features and added features using machine learning on these numeric values. This script is for four separate opponents of Amanda Nunez: Germaine, Tate, Pennington, and Rousey. Only the first round up to five minutes or however long the fight lasted were recorded in the notes.
Github files repository
These are the actions extracting and a brief description:
cross: punch/strike/overhead hit/etc to hit with the top four knuckles of hand upon opponent’s body or more likely face or side of the head, this could mean right cross or left cross, even when in the mount position of ground work the fighter could choose to hit opponent with a cross instead of a hammer or hook or upper cut punch, usually lifting the hand to add in gravity and acceleration with own strength and downward body movement intending to knock out, add to get opponent to release grip if in a lock, or to damage the face or cause pain
jab: This is done normally when breaking the ice or trying to open up opponent, it is not intended to be a power shot or heavy hit, usually used repetitively or to stun before delivering a cross which is a heavier hit powered from momentum added from the hips etc. Typically done in the stand up dance when testing out opponent when neither is getting too close for combat
hammer: This is a strike typically done in a ground in pound mount position, but can be while in the mount on top or on the bottom loosening a choke hold. The hit is done to smash and stun the face of opponent, and typically not a favorite, because it can hurt the fighter as much as the opponent due to the part of the hand being used. This type of strike is used for fast repetitive bursts to stun and get out of a lock when on the floor striking or preventing a choke or joint lock. The side of the fist used is the pinky side in alignment with the elbow. Can be lifted above the head to get more power in accelerating with gravity and body weight to hit opponent’s face. This is why some fighters hit with a regular jab or cross instead to lessen damage to wrist and hand while stiking opponent. All strikes cause damage, but this is not likely to knock an opponent out, also the hand can be thrown off side to make the person get off balance and lose body control in the ground fight. The male fighters use this more than the females.
hook: This is a heavy hit or used in combination with other strikes like the jab or cross, because if the first hit, opponent can just back away unless their against the cage or ropes. It stuns and can knock the breath out of opponent, adds to chances of getting a TKO or technical knock out or knockout. Its a sneaky punch delivered when opponents arms are up or down blocking head shots and/or body kicks.
upper: This is a puch delivered from upward momentum to strike the chin when up close in a clinch or hold of some sort. Not a powerful punch compared to other strikes, used to stun and to set up for other heavy hits or barrages of various strikes at once.
kick: The push kick is the most powerful to move opponent off balance with little effort, but the muay thai kick (mt abrev.) is a very powerful kick if your skilled in the pivot and trained your shins to deliver bone to bone or head kicks with its snapping movement. It breaks down the balance and you see fighters deliver this to the lead leg to knock the opponent off balance and prevent leverage needed for heavy hits or crosses, it can also make the opponent stumble if they get their lead leg kicked hard enough to knock out of stance. Some go for the inner leg as well to knock off balance. This kick is also shown aimed at the outer lead leg Iliotibial or IT band to cause pain and test out their kick to lead up to a head kick or the opponent’s defenses. Usually some punches or an attempt at a takedown of opponent occurs, unless they step backwards.
elbow: This is a strike used standing up at close range, or in a ground and pound full mount position to drop with gravity while aiming the elbow towards the opponents face, not sure if the target is the forehead, but most opponents getting hit with the elbow end up with cuts/slashes/gashes on their forehead. This could be a technical knockout or some sort of stoppage if the opponent can’t fight because blood gets in their eyes, and a doctor dismisses the fight due to inability to continue from injury. When cut, blood drips into the eyes. And it is said can cause blindness if the calcium hardens from the blood in the eye.
takedown: This happens when the fighter thinks they want to either body slam the opponent or have a better chance at ground and pound and a chance at mounting opponent once taken down, or will out wrestle the opponent with a joint lock or choke. Wrestling may look less violent, but wrestling can leave joints in repair for 6-12 months in rehab, break ribs from the chest locks, and make the opponent lose oxygen with neck holds and pass out. Usually fighters tap out if they think they will pass out, and would rather tap out than get choked out or know they are not a strong enough wrestler to break apart the hold. Once it is locked, it can be held for many minutes until the fight round ends, but usually skilled fighters will find other ways to disarm their opponent with wrestling, hits, body shifting, etc.
knees: These are used in clinches or holds of some sort, and can be aimed with high knees, jumping knees, knees striking the IT bands, or the abdomen, to stun and loosen grip to gain control. They can be very powerful if used right. Mazvidal knocked out a guy in under 5 seconds with a flying knee to the forehead. That was the only time I recognized seeing a knockout from a knee. It can cut the face and make the nose or lips bleed if hit with the knee.
We are going to run this script first, but the notes do keep track of which arm was used when making a cross, knee, or other strike other than takedown. Left is L and right is R before the name of the action/strike used and after either lands or misses.
As the extracted actions are listed, there is not an extracted description of which arm was used for the strike or action. There are also some types of wrestling moves noted in the notes, but the entirety of the observations didn’t continually list the hold if still in a specific hold that second, only any changes observed. We can add in these features at the end.
Here is a brief description pulled from Wikipedia on BJJ moves that aren’t extracted as features but could be useful:
Guard: person dominating on back with legs around opponent’s waste, controls top opponent
half Guard: person dominating on back controling with one leg of the top opponent preventing the opponent from passing or gaining side control
open Guard: variations where person is on back but legs not wrapped around top opponent’s waste, preventing the top opponent from striking or passing with feet or shins
side control: top person dominates at the side pinning shoulders and/or hips while striking and trying to gain a lock or choke
full mount: person on top dominates with legs above person on ground’s hips and knees in armpits to prevent bottom opponent from striking or trying to gain control
back mount: ankles in thighs of person who is being dominated by person on back to maneuver a choke or lock
Aside: Having experienced this myself I know that there are things that happen in the hold that aren’t illustrated to the viewers. Such as, if the person locks there legs around the rib cage, they are squeezing in an attempt to break their ribs or lower their ability to breathe with limited lung cavity movement, and the idea is to cut off the carotid with a foot, ankle arm and your arm when choking until the person taps out of passes out. FYI, experience matters. Having had 3 months training and going up against someone with 2 years experience and a height advantage I did not last longer than 59 seconds in limited mma, where punches to the face are illegal. FYI I was 27 and the opponent was 14 and both of us females at that time (I plan on dying a female with no changes in that feature until that finite point in time). Do not underestimate age. Also, it takes quite a bit of maneuvering to get out of a hold once locked. Also, too much wrestling leaves viewers who want to see hits or strikes and movement on the floor towards the opponent and not dancing around the ring to avoid opponent is how these fighters make a name for themselves. In other words, these fighters have to be to some extent bat crazy.
library(dplyr)
Nunez <- read.csv('Nunez4fights.csv', header=TRUE, sep=',',
na.strings=c('','NA'))
colnames(Nunez)
## [1] "Round" "SecondsIntoRound"
## [3] "SecondsLastRoundAction" "cmTotHitsR.X1"
## [5] "cmTotHitsL.X1" "cmTotHitsM.X1"
## [7] "Hits.Recvd.X1" "Hits.Lnd.X1"
## [9] "Hits.Mssd.X1" "cmTotHitsR.X2"
## [11] "cmTotHitsL.X2" "cmTotHitsM.X2"
## [13] "Hits.Recvd.X2" "Hits.Lnd.X2"
## [15] "Hits.Mssd.X2" "Time"
## [17] "FighterActionReactions.X1" "FightersActionsReactions.X2"
## [19] "Notes"
Remove the instances with no action from either fighter X1 or X2.
Added <- filter(Nunez, Nunez$FighterActionReactions.X1 !=0 | Nunez$FightersActionsReactions.X2 !=0)
Look at the notes on each fighter. The X1 is Felicia, the X2 is one of the three opponent’s.
head(Added$FighterActionReactions.X1, 10)
## [1] missed R mt kick to low L leg
## [2] missed L jab
## [3] <NA>
## [4] missed R mt kick to low L leg
## [5] lands L mt kick to L leg
## [6] missed L jab, missed R cross
## [7] lands L mt kick to L leg, missed R cross to face
## [8] <NA>
## [9] holding R leg hold starts
## [10] holding R leg hold continues
## 155 Levels: holding side control hold continues ...
head(Added$FightersActionsReactions.X2,10)
## [1] <NA>
## [2] <NA>
## [3] missed L mt kick to L low leg
## [4] <NA>
## [5] <NA>
## [6] lands L mt kick to L leg
## [7] <NA>
## [8] lands L mt kick to L low leg
## [9] caught in R leg hold and missed L mt kick to body
## [10] caught in R leg hold
## 139 Levels: attempting to get up with opponent and do a waste takedown against cage and caught in guillotine hold ...
List the unique notes for X1.
unique(Added$FighterActionReactions.X1)
## [1] missed R mt kick to low L leg
## [2] missed L jab
## [3] <NA>
## [4] lands L mt kick to L leg
## [5] missed L jab, missed R cross
## [6] lands L mt kick to L leg, missed R cross to face
## [7] holding R leg hold starts
## [8] holding R leg hold continues
## [9] holding R leg hold continues misses R cross to face
## [10] loses R leg hold
## [11] lands R mt kick to L low leg
## [12] misses L jab to face, misses R cross to face
## [13] misses L jab to face
## [14] attempts body waste takedown
## [15] lands takedown
## [16] caught in full guard hold
## [17] caught in full guard hold and puts weight on L shoulder collarbone acromian process while lifting off L leg to break full guard
## [18] caught in full guard hold and twisting with R armpit and R leg anchoring into L locked thigh at the inside knee
## [19] caught in full guard hold and grabbing at L ear with R hand while twisting and lifting out of full guard lock, gains L arm back, breaks full guard lock at ankles
## [20] breaks full guard hold and standing up while keeping L shin of opponent at chest and bent
## [21] holding L knee hold starts of opponent while standing up and maneuvering around L side of opponent pushing forward to knock off balance a possible up kick of opponent
## [22] caught in open guard hold continues and misses downward R hook to head while pushing and twisting L and holding L knee hold continues
## [23] caught in open guard hold continues and lands downward R cross to head while pushing opponent's leg toward her and turning L and loses L knee hold
## [24] caught in open guard hold continues and lands L downward cross to face while getting out of open guard completely
## [25] caught in open guard hold continues
## [26] caught in open guard hold continues and holding R foot while opponent in open guard
## [27] caught in open guard hold contnues and moves open guard feet to her R while landing R downward cross to face
## [28] breaks open guard hold and falls on ground to the side of opponent
## [29] getting up while attempting a head R arm guillotine of opponent as holding guillotine hold starts
## [30] locks guillotine around R armpit and neck of opponent while standing full guard lock and holding guillotine hold continues
## [31] holding guillotine hold continues
## [32] takedown of opponent in full guard while holding of guillotine hold continues
## [33] holding full guard hold starts and holding guillotine hold continues
## [34] loses guillotine hold and loses full guard hold
## [35] push kicks opponent off
## [36] getting up while L foot being held by opponent
## [37] getting up from ground
## [38] holding R arm hold starts and caught in upper body hold
## [39] caught in R arm hold and caught in upper body hold continues and moves opponent away from side standing control against cage
## [40] loses R arm hold and caught in upper body hold
## [41] holding neck hold starts and caught in upper body hold
## [42] breaks upper body hold to switch sides
## [43] caught in upper body hold and holding R arm hold starts
## [44] breaks upper body hold and loses R arm hold and lands a R leg to L leg of opponent sweeping takedown
## [45] lands slight double leg takedown
## [46] not on the ground but leaning over opponent
## [47] caught in open guard hold and lands downward R cross to face, lands downward L cross to face, lands downward R cross to face
## [48] caught in open guard hold and lands downward R cross to face
## [49] caught in open guard hold
## [50] caught in open guard hold and breaks into opponents open guard hold against cage and lands R downward cross to head
## [51] caught in open guard hold and lands downward R cross to head, lands downward R cross to head
## [52] caught in open guard hold and lands R downward cross to head
## [53] caught in open guard hold and twists L forearm of opponent at the elbow pushing the hand in open guard hold from standing leaning over position
## [54] breaks open guard hold hold
## [55] caught in full guard hold
## [56] lands R elbow to face and caught in full guard hold
## [57] breaks full guard hold and caught in open guard hold
## [58] caught in open guard hold
## [59] lands R downward cross to face and caught in open guard hold
## [60] caught in open guard hold and misses L downward cross to head, lands R downward cross to head
## [61] breaks through leg kicks of open guard and caught in open guard hold
## [62] lands downward R cross to head and caught in open guard hold
## [63] lands downward R cross to head and caught in open guard hold, lands downward R cross to head
## [64] misses downward R cross to head and caught in open guard hold, misses downward R cross to head
## [65] lands downward L cross to head and caught in open guard hold, lands downward L cross to head
## [66] misses downward R cross to head and caught in open guard hold
## [67] lands downward R cross to head and caught in open guard hold, lands downward L cross to head
## [68] misses downward R cross to head and caught in open guard hold, misses downward L cross to head, lands L downward cross to head
## [69] lands downward L cross to head and caught in open guard hold
## [70] misses downward R cross to head and caught in open guard hold, lands L downward cross to head
## [71] lands downward R cross to head and caught in open guard hold, lands L downward cross to head
## [72] misses downward R cross to head and caught in open guard hold, misses downward L cross to head
## [73] misses downward R cross to head and caught in open guard hold, misses downward L cross to head, misses downward R cross to head
## [74] pressing opponent into ground from the top at opponents shoulders and neck having open guard and legs up off balance removing leverage to kick up and caught in open guard hold
## [75] knee pinned to abdomen and holding L side control hold starts and breaks open guard hold
## [76] holding side control hold continues
## [77] lands L downward cross to head and holding side control hold continues
## [78] lands L downward hook to face and holding side control hold continues, lands L downward elbow to face
## [79] L back side control hold with L knee pinned to opponent's L hip and holding side control hold continues
## [80] holding a L armpit and neck choke hold starts and holding side control hold continues
## [81] holding choke hold continues and holding side control hold continues
## [82] loses choke hold and holding side control hold continues and pins L knee on opponent's abdomen
## [83] misses R hammer to face holding side control hold continues with knee pinning opponent's abdomen
## [84] holding side control hold continues
## [85] lands L downward elbow to the face from pinned side control mount
## [86] misses L downward elbow to face
## [87] loses side control hold
## [88] misses downward R cross to face
## [89] misses downward flying R cross to face and caught in open guard hold
## [90] round ends caught in open guard hold
## [91] misses L jab
## [92] misses R mt kick to low L lead leg
## [93] gets up out of takedown
## [94] misses R cross to face
## [95] lands body throw takedown gets up
## [96] misses illegal right knee to the face
## [97] misses L jab, misses R cross to face
## [98] lands R cross
## [99] misses L jab to face, ducks to avoid body takedown from missed L jab
## [100] lands R cross to face
## [101] lands L hook to face
## [102] lands L upper to face
## [103] misses R upper to face, misses R upper to face
## [104] lands L knee to face
## [105] lands L jab to face
## [106] misses R mt kick to inside R leg
## [107] lands L jab to face, lands R cross to face
## [108] lands 2 hammer hits R face on top back
## [109] lands 2 hammer hits L face on top back
## [110] lands RNC
## [111] flips on back w RNC
## [112] misses R cross
## [113] misses L jab to face
## [114] feigns L mt kick to inside L lead leg
## [115] missses R mt kick to low L lead leg
## [116] lands L jab to body, misses R cross to face
## [117] misses L jab to body
## [118] pushes off with R forearm
## [119] lands R mt kick to low L back of knee, misses L jab, misses R cross
## [120] blocks L jab by raising L Shoulder, misses R cross to face
## [121] pushes Face with R hand and away
## [122] misses L jab to body, leans back from R cross to face
## [123] ducks
## [124] ducks and clinches waist pushes to cage
## [125] lands R upper to face
## [126] lands R mt kick to low L back of knee
## [127] blocks L hook with R overhead arm
## [128] lands R push kick to body
## [129] misses R push kick to body
## [130] misses R cross to face, misses R cross to face
## [131] misses R mt kick to body
## [132] ducks
## [133] misses R upper to face
## [134] feigns L mt kick to head
## [135] misses L mt kick to inside L lead leg
## [136] lands L knee to body with neck clinch
## [137] missed a L jab to face
## [138] missed a R cross to face
## [139] missed a R push kick to body
## [140] missed a R cross to face, lands a L jab to face
## [141] missed a L jab to face, lands a R cross to face
## [142] missed a R cross, missed a L jab to face, missed a R cross to face
## [143] lands a R cross to face
## [144] turns body to side gets out of clinch
## [145] lands L jab to face, misses R cross to face
## [146] misses L jab to face, misses R cross to face,
## [147] lands L jab to face face
## [148] misses R cross to face, misses L upper
## [149] misses R cross to body
## [150] lands R cross to face, ducks R cross left
## [151] misses L jab to face, lands R cross to face
## [152] runs to and feigns a R cross to face
## [153] misses R cross to face
## [154] lands a L jab to face, lands R cross to face
## [155] lands downward L jab to face
## [156] referee gets between and stops fight TKO
## 155 Levels: holding side control hold continues ...
There are 155 unique actions for Amanda amongst these three opponents. Out of how many observations?
dim(Added)
## [1] 393 19
There are 393 observations in the data that excludes observations with no noticeable action or reaction from X1 or X2.
The unique actions/reactions from the opponent’s separately but collectively are:
unique(Added$FightersActionsReactions.X2)
## [1] <NA>
## [2] missed L mt kick to L low leg
## [3] lands L mt kick to L leg
## [4] lands L mt kick to L low leg
## [5] caught in R leg hold and missed L mt kick to body
## [6] caught in R leg hold
## [7] caught in R leg hold
## [8] breaks R leg hold
## [9] misses R cross to face
## [10] misses L jab to face
## [11] misses L hook to face
## [12] lands full guard hold on back holding full guard hold starts
## [13] holding full guard hold continues
## [14] holding full guard hold continues and holding R forearm and pulling from face with L hand and holding L arm with R arm, loses L arm hold, grabs L hand with L hand, loses full guard hold lock at ankles and both arm holds
## [15] loses full guard hold hold and has open guard hold with L knee into chest and R leg behind opponent
## [16] holding open guard hold starts protecting body with L shin against opponent and L leg to the R of opponent no hands or arms locked of opponent, L foot is braced against opponent's R upper thigh and hip and caught in L knee hold
## [17] holding open guard hold continues and caught in L knee hold
## [18] holding open guard hold continues and breaks L knee hold
## [19] holding open guard hold continues and misses L upward kick from open guard hold to body
## [20] holding open guard hold continues
## [21] holding open guard hold continues and misses L upward kick to body from open guard hold
## [22] holding open guard hold continues and tries holding back opponent with L foot in R armpit of opponent while not protecting face while in open guard hold
## [23] loses open guard hold and gets up off back from open guard
## [24] attempting to get up with opponent and do a waste takedown against cage and caught in guillotine hold
## [25] standing while caught in a guillotine hold
## [26] caught in a guillotine hold
## [27] caught in a guillotine hold falls to ground on top
## [28] breaks guillotine hold and breaks full guard hold
## [29] holds L ft of opponent after stepping back from upward kicks
## [30] lands L upper cut to face while opponent getting up
## [31] clinches opponent both standing against the cage and holding upper body hold starts and caught in R arm hold
## [32] caught in R arm hold and holding upper body hold continues
## [33] lands R knee to upper L leg of opponent while holding opponent against the cage and caught in R arm hold and holding upper body hold continues
## [34] lands R knee to upper low L leg while pressing opponent against cage and caught in R arm hold and holding upper body hold continues
## [35] lands R knee to upper L leg and caught in R arm hold and holding upper body hold continues
## [36] lands high L knee to face of opponent while holding against cage and caught in R arm hold and holding upper body hold continues
## [37] misses R knee to upper L leg and caught in R arm hold and holding upper body hold continues
## [38] holding upper body continues and breaks R arm hold
## [39] holding upper body hold continues
## [40] loses upper body hold and holding upper body hold starts but different side
## [41] loses upper body hold and breaks R arm hold
## [42] lands in sitting open guard
## [43] holding open guard hold hold starts
## [44] holding open guard hold continues
## [45] holding open guard hold continues and misses upward L jab to face
## [46] twists body toward L arm to avoid L arm lock at elbow and holding open guard hold continues
## [47] loses open guard hold
## [48] holding full guard hold starts
## [49] loses full guard hold and holding open guard hold starts
## [50] misses R upward puch kick and holding open guard hold continues
## [51] caught in side control hold
## [52] caught in choke hold and caught in side control hold
## [53] breaks choke hold and caught in side control hold
## [54] misses L upward kick to face but breaks the pinned side control mount hold
## [55] misses upward R kick to face and in open guard hold free room and holding open guard hold starts
## [56] holding open guard hold and turning and push kicking legs towards opponent
## [57] holding open guard hold
## [58] round ends in holding open guard hold
## [59] misses R push kick
## [60] misses L jab
## [61] misses L mt kick inside L leg
## [62] attempts one leg takedown
## [63] lands one leg takedown
## [64] tries for L leg takedown
## [65] misses R knee, fails takedown
## [66] goes for takedown at waist
## [67] fails takedown
## [68] misses L jab, goes for waist takedown
## [69] on floor reaching
## [70] gets up from floor
## [71] ducks
## [72] lands L push kick to body
## [73] misses L jab and ducks
## [74] holding arms up
## [75] stumbles to ground moving backward
## [76] on ground trying to stand
## [77] stands up blocking face
## [78] blocking hits with arms guarding face
## [79] guarding face with arms standing blocking hits
## [80] misses L push kick
## [81] dives for takedown, ends up on ground
## [82] on ground
## [83] taps out
## [84] falls avoiding the kick
## [85] blocks with L hand kick
## [86] lifts L leg to avoid kick
## [87] jumps back to avoid kick
## [88] leans back to avoid jab
## [89] stumbles, drops to ground off balance
## [90] misses R cross
## [91] blocks kick with L leg knee raised
## [92] misses L jab to face, misses R cross
## [93] misses L hook to face, misses R cross to face
## [94] getting push back on heels
## [95] blocks jab with raised L leg
## [96] blocks L jab, ducks back from R cross
## [97] misses L jab to face , ducks R cross to face
## [98] attempts body clinch
## [99] misses L kick to body
## [100] ducks R cross
## [101] blocks w L arm
## [102] blocks with L shoulder
## [103] blocks with R hand the jab
## [104] misses R hook to face
## [105] misses L jab, misses R cross to face
## [106] blocks R cross with L arm against cage
## [107] lands R cross to face
## [108] lands L knee in clinch control
## [109] misses L push kick against cage
## [110] misses L jab, misses R cross
## [111] jumps back to avoid upper
## [112] blocks and leans to side pushing R cross with Left hand
## [113] steps back drops L arm as if to block or push leg down
## [114] misses L jab, misses running R cross to face
## [115] feigns L mt kick to inside L leg, raises arms
## [116] lands R push kick against cage
## [117] feigns L push kick against cage
## [118] attempts one legged takedown from cage
## [119] lifts L leg for mt kick projected
## [120] jumps back
## [121] leans back to avoid R cross to face
## [122] misses R cross, misses L hook to face
## [123] missed a L jab to face
## [124] missed a R cross to face
## [125] missed a L push kick to body
## [126] missed a L push kick to body, missed a L jab to face
## [127] attempts head clinch
## [128] misses L front push kick to body
## [129] blocks, ducks cross
## [130] blocks jab and cross
## [131] blocks jab, pushes L upper hand from face
## [132] pushes off with block of R cross
## [133] misses L jab to face, outreached by opponent
## [134] side steps R, misses L jab
## [135] misses L jab to face, blocks R cross
## [136] loses attempted clinch
## [137] blocks and ducks R cross to face against cage
## [138] tries to block R cross to face but outreached overhead
## [139] stumbles against cage with L jab to face, receives R cross to face
## [140] falling to knees against cage
## 139 Levels: attempting to get up with opponent and do a waste takedown against cage and caught in guillotine hold ...
There are 140 unique actions or reactions among the four different opponents’ 1st round fight with Amanda. Only the first fight with Germaine counts the wrestling because the other 3 fights were not available to view the actions at the time of this document and were recycled from a script that looked at only the stand up fight for Tate, Rousey, and Pennington with Amanda.
Get fighter X1’s list of actions and reactions to split on.
Sym <- strsplit(as.character(Added$FighterActionReactions.X1), ',')
Create 1st sequence to grab actions from the table by index of observation that the action occured; this grabs the index of occurence in the table from each observation as a vector.
sq1 <- lapply(Sym,'[',1)
head(sq1,10)
## [[1]]
## [1] "missed R mt kick to low L leg"
##
## [[2]]
## [1] "missed L jab"
##
## [[3]]
## [1] NA
##
## [[4]]
## [1] "missed R mt kick to low L leg"
##
## [[5]]
## [1] "lands L mt kick to L leg"
##
## [[6]]
## [1] "missed L jab"
##
## [[7]]
## [1] "lands L mt kick to L leg"
##
## [[8]]
## [1] NA
##
## [[9]]
## [1] "holding R leg hold starts"
##
## [[10]]
## [1] "holding R leg hold continues"
sq2 <- lapply(Sym,'[',2)
sq3 <- lapply(Sym,'[',3)
Lets also get the ground moves added to our data as features from Amanda’s fight with Germaine only. The ground moves are the ‘holding…hold’ for the fighter holding some hold or body part as either an arm, back, full mount, back mount, etc. There is also a note of when the fighter ‘loses…hold’ or stops holding that was added but doesn’t mean it isn’t ground work done or submitted but that in some instances switched from a full mount hold to a side mount control hold, of lost back mount hold to holding back when legs not fully locked, etc. There is also the options for the opponent who ‘breaks…hold’ or ‘caught in…hold’ to add to this data for machine learning. I also want to distinguish between muay thai (mt) and push kick instead of just counting all kicks. The ground work was intentionally added to the first sequence before the comma separator, so we just need to add it as a grab from each fighter. But there are multiple holds in some instances and breaks, caught, and lost holds. So we need to account for the multiple holds. In some holds the opponent is being held or holding a hold but still getting hit, or ‘ground and pound’ and this is normal in mma. The opponent could be holding the body, arm, or hand to avoid getting hit while in a hold like full mount or full guard or back mount.
hold <- grep('holding.+hold',sq1)
hold
## [1] 9 10 11 12 31 32 39 40 41 42 43 44 45 46 47 48 53 54 55
## [20] 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 72 73 74 75
## [39] 76 77 78 80 82 172 173 174 175 176 177 178 179 180 181 182 183 184 185
## [58] 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204
## [77] 205 206 207 208 209
There are more than a few instances for this fighter that involves ground work, clinches or holds while standing, and wrestling from the number of instances that a hold is used by this fighter. Now look at the number of instances this fighter is caught in a hold.This can be an arm hold when clinching while standing up or on the ground when the opponent grabs the arm to prevent getting hit by it or prevent a wrestling submission.
caught <- grep('caught.*hold',sq1)
caught
## [1] 21 22 23 24 25 26 27 28 29 32 33 34 35 36 37 53 54 55
## [19] 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73
## [37] 74 75 76 77 78 79 80 82 86 87 88 89 90 91 92 93 94 95
## [55] 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113
## [73] 114 115 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132
## [91] 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150
## [109] 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168
## [127] 169 170 171 215 216 217 218 219 220 221 222 223 224 225 226 227 228 229
## [145] 230 231
More of the holds on Amanda by Germaine, because we miss the data on the other three fighters’ wrestling moves, in either a limb to prevent striking or wrestling maneuvering, a mount or guard hold, or against the cage than she did.
Lets look at the lost holds.
lost <- grep('loses.*hold', sq1)
lost
## [1] 13 33 49 79 83 207 213
The lost holds for Amanda with Germaine are few. The other three fighters don’t have the added wrestling moves. We will have to account for this when selecting the wrestling features for ML on this fighter later. We can just subset by Notes==‘Germaine’ when we get there. We’re not there yet.
Now for the number of holds this fighter broke out of or the opponent (Germaine) quit holding.
breaks <- grep('breaks.*hold',sq1)
breaks
## [1] 30 38 81 83 92 116 129 149 172
Amanda or X1 got out of quite a bit of the attempted holds by X2 or Germaine.
Now lets check out the number of muay thai kicks and push kicks separately in the first sequence of each instance. When it comes to these actions, we can include all fighters, because these actions were recorded for the other fighters Tate, Rousey, and Pennington, as well as for Germaine.
mtKicks <- grep('mt kick',sq1)
pushKicks <- grep('push kick',sq1)
mtKicks;pushKicks
## [1] 1 4 5 7 14 235 237 241 247 276 285 287 288 289 291 293 294 295 298
## [20] 299 302 304 308 320 324 327 334 336 342 344 348 357
## [1] 50 328 331 363 367 371
We can see that X1 uses a lot of muay thai kicks, much more than she does push kicks in the 1st sequence.
Lets look at the right (R) or left (L) legs used to deliver the muay thai kicks or push kicks separately.
LmtKicks <- grep('L mt kick',sq1)
RmtKicks <- grep('R mt kick',sq1)
Lpush <- grep('L push kick', sq1)
Rpush <- grep('R push kick', sq1)
LmtKicks;RmtKicks;Lpush;Rpush
## [1] 5 7 293 342 348
## [1] 1 4 14 235 237 241 247 276 285 287 288 289 291 294 295 298 299 302 304
## [20] 308 320 324 327 334 336 344 357
## integer(0)
## [1] 328 331 363 367 371
X1 prefers to use the Right leg to deliver her muay thai kicks than her left leg, but does still use her left leg. Also, none of her push kicks come from her Left leg, they are all from her Right leg in the first sequence of up to three actions with each of four fighters’ 1st rounds with her.
Lets look at the muay thai and push kicks by X1 in the 2nd and 3rd sequences as well to get an idea of how this fighter rates their own kicks in sequential order or usefulness.
mtKicks2 <- grep('mt kick',sq2)
pushKicks2 <- grep('push kick',sq2)
mtKicks2;pushKicks2
## integer(0)
## integer(0)
mtKicks3 <- grep('mt kick',sq3)
pushKicks3 <- grep('push kick',sq3)
mtKicks3;pushKicks3
## integer(0)
## integer(0)
None of the 2nd or 3rd sequences involve any sort of kick. So, they must be used just for variation or surprise. There is also no point in seeing which is L or R as a kick if there are none.
Lets now look at the opponent’s or X2’s preference in the first second as an action or reaction by starting with the number of holds that X2 used. Noting that the wrestling actions are only valid for Amanda’s fight with Germaine.
This creates a list of the first sequence of three to select actions from for X2.
SymX2 <- strsplit(as.character(paste(Added$FightersActionsReactions.X2)),',')
sq1X2 <- lapply(SymX2,'[',1)
sq2X2 <- lapply(SymX2,'[',2)
sq3X2 <- lapply(SymX2,'[',3)
Lets see the number of holds X1 (Amanda) was being held in by X1 (Germaine)
holdX2 <- grep('holding.+hold',sq1X2)
holdX2
## [1] 21 22 23 24 25 26 27 28 29 31 32 33 34 35 36 37 53 54
## [19] 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72
## [37] 73 74 75 76 77 78 79 80 81 82 86 87 88 89 90 91 92 93
## [55] 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111
## [73] 112 113 114 115 117 118 119 120 121 122 123 124 125 126 127 128 129 130
## [91] 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148
## [109] 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166
## [127] 167 168 169 170 171 215 216 217 218 219 220 221 222 223 224 225 226 227
## [145] 228 229 230 231
X2 used a lot of holds on X2 from the data provided above.
Lets see the number of holds X2 was caught in.
caughtX2 <- grep('caught.*hold',sq1X2)
caughtX2
## [1] 9 10 11 12 32 39 40 41 42 43 44 45 46 47 48 53 54 55 56
## [20] 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 77
## [39] 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191
## [58] 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210
## [77] 211 212
There were quite a bit of holds X2 was held in from the above data.
Lets look at the lost holds by X2.
lostX2 <- grep('loses.*hold', sq1X2)
lostX2
## [1] 30 38 81 83 116 129 172
Some holds X2 either quit holding or X1 broke out of.
Now for the number of holds that x2 broke out of or the opponent quit holding.
breaksX2 <- grep('breaks.*hold',sq1X2)
breaksX2
## [1] 13 33 49 75 76 78 79 83 207 213
X2 also broke out of a fair share of holds.
Now lets check out the number of muay thai kicks and push kicks separately in the first sequence of each instance that X2 used.
mtKicksX2 <- grep('mt kick',sq1X2)
pushKicksX2 <- grep('push kick',sq1X2)
mtKicksX2;pushKicksX2
## [1] 3 6 8 9 239 349 355
## [1] 221 232 255 274 337 350 351 369 372 374
We can see that X2 used a fair amount of push kicks and muay thai kicks. Recalling that we are now evaluating all four fighters as these actions were recorded for all 1st rounds with these fighters. Keep in mind there are two other sequences that kicks could have been delivered, like in an open guard, where the opponent X2 uses an ‘upward kick’ which could be considered a push kick. Lets see.
openPushX2 <- grep('upward.*kick',sq1X2)
openPushX2
## [1] 34 36 51 138 213 215
We can see that some of the fighters did use the upward kicks and these are not duplicates of the muay thai or push kick indices. We can also add upward kicks, possibly from the X2 hold in open guard. This hold is more of a defense and is a lousy one but keeps them in the round longer. Its lousy because X1 can throw their legs to the side and still ground and pound, but the hits won’t be as heavy as in a stand up bout, that could knock out this opponent.
We should also see if X1 has any upward kicks.
openPushX1 <- grep('upward.*kick',sq1)
openPushX1
## integer(0)
X1 doesn’t use any upward kicks or use the open guard to kick off opponent.
How about in the 2nd and 3rd sequences, did X2 use any muay thai or push kicks?
mtKicksX2b <- grep('mt kick',sq2X2)
pushKicksX2b <- grep('push kick',sq2X2)
mtKicksX2b;pushKicksX2b
## integer(0)
## integer(0)
mtKicksX2c <- grep('mt kick',sq3X2)
pushKicksX2c <- grep('push kick',sq3X2)
mtKicksX2c;pushKicksX2c
## integer(0)
## integer(0)
None of the fighters for x2 have used a muay thai or push kick. We know that there are some upward kicks for X2 only, so lets see if X2 also used the upward kick from open guard in the 2nd and 3rd sequence.
openPushX2b <- grep('upward.*kick',sq2X2)
openPushX2c <- grep('upward.*kick',sq3X2)
openPushX2b;openPushX2c
## integer(0)
## integer(0)
X2 didn’t use any upward kicks in the 2nd or 3rd sequences.
We should see which legs were prefered by those four fighters as X2, or either their Left or Right leg.
LmtKicksX2 <- grep('L mt kick',sq1X2)
RmtKicksX2 <- grep('R mt kick',sq1X2)
LpushKicksX2 <- grep('L push kick',sq1X2)
RpushKicksX2 <- grep('R push kick',sq1X2)
LmtKicksX2;RmtKicksX2;LpushKicksX2;RpushKicksX2
## [1] 3 6 8 9 239 349
## integer(0)
## [1] 255 274 337 351 369 372
## [1] 232 350
Interestingly, none of the four fighters used their R leg for muay thai kicks, but used their Left leg instead. And the push kicks were mostly used by the Left leg and few used the Right leg for their push kicks. Those are the stand up kicks, not the upward kicks from open guard. The following is the upward kicks from open guard by X2 (Germaine only)
LopenPushX2 <- grep('L upward.*kick',sq1X2)
RopenPushX2 <- grep('R upward.*kick',sq1X2)
LopenPushX2;RopenPushX2
## [1] 34 36 213
## [1] 138
Germaine used the upward kicks from open guard more with her Left leg than her Right leg.
The majority of muay thai kicks delivered to X1 by X2 (4 different opponents separately) used the left leg. This could be toward the lead leg to lessen the stability of X1 or knock off balance to reduce striking power delivered by X1’s right cross, or to the head or body. Lets see.
sq1X2[LmtKicksX2]
## [[1]]
## [1] "missed L mt kick to L low leg"
##
## [[2]]
## [1] "lands L mt kick to L leg"
##
## [[3]]
## [1] "lands L mt kick to L low leg"
##
## [[4]]
## [1] "caught in R leg hold and missed L mt kick to body"
##
## [[5]]
## [1] "misses L mt kick inside L leg"
##
## [[6]]
## [1] "feigns L mt kick to inside L leg"
Most of the muay thai kicks by X2 to X1 are for the inside L leg or lead leg. Implying they are avoiding her right cross and want to keep her from having a strong Right cross by making her stability and leverage decline. ***
This next section of code will grab the indices of each specific action grep’d from the action text fields to count each action. We will do this for up to three sequences of actions/reactions in a second. An example of a few of the action vectors are displayed.
kicks_sq1 <- grep('land.*kick', sq1)
elbows_sq1 <- grep('land.*elbow', sq1)
knees_sq1 <- grep('land.*knee', sq1)
jab_sq1 <- grep('land.*jab', sq1)
cross_sq1 <- grep('land.*cross', sq1)
hook_sq1 <- grep('land.*hook', sq1)
upper_sq1 <- grep('land.*upp', sq1)
takedown_sq1 <- grep('land.*takedown', sq1)
hammer_sq1 <- grep('land.*hammer', sq1)
hammer_sq1;takedown_sq1;upper_sq1;cross_sq1
## [1] 279 280 281
## [1] 20 83 84 251
## [1] 270 322
## [1] 33 34 37 86 87 88 92 93 103 104 132 134 150 151 152 153 155 156 160
## [20] 162 163 164 165 167 174 257 264 269 372 381 387 390
missed in 1st sequence
kicks_sq1m <- grep('miss.*kick', sq1)
elbows_sq1m <- grep('miss.*elbow', sq1)
knees_sq1m <- grep('miss.*knee', sq1)
jab_sq1m <- grep('miss.*jab', sq1)
cross_sq1m <- grep('miss.*cross', sq1)
hook_sq1m <- grep('miss.*hook', sq1)
upper_sq1m <- grep('miss.*upp', sq1)
takedown_sq1m <- grep('miss.*takedown', sq1)
hammer_sq1m <- grep('miss.*hammer', sq1)
landed in second sequence
kicks_sq2 <- grep('land*kick', sq2)
elbows_sq2 <- grep('land.*elbow', sq2)
knees_sq2 <- grep('land.*knee', sq2)
jab_sq2 <- grep('land.*jab', sq2)
cross_sq2 <- grep('land.*cross', sq2)
hook_sq2 <- grep('land.*hook', sq2)
upper_sq2 <- grep('land.*upp', sq2)
takedown_sq2 <- grep('land.*takedown', sq2)
hammer_sq2 <- grep('land.*hammer', sq2)
missed in 2nd sequence
kicks_sq2m <- grep('miss.*kick', sq2)
elbows_sq2m <- grep('miss.*elbow', sq2)
knees_sq2m <- grep('miss.*knee', sq2)
jab_sq2m <- grep('miss.*jab', sq2)
cross_sq2m <- grep('miss.*cross', sq2)
hook_sq2m <- grep('miss.*hook', sq2)
upper_sq2m <- grep('miss.*upp', sq2)
takedown_sq2m <- grep('miss.*takedown', sq2)
hammer_sq2m <- grep('miss.*hammer', sq2)
landed in 3rd sequence
kicks_sq3 <- grep('land.*kick', sq3)
elbows_sq3 <- grep('land.*elbow', sq3)
knees_sq3 <- grep('land.*knee', sq3)
jab_sq3 <- grep('land.*jab', sq3)
cross_sq3 <- grep('land.*cross', sq3)
hook_sq3 <- grep('land.*hook', sq3)
upper_sq3 <- grep('land.*upp', sq3)
takedown_sq3 <- grep('land.*takedown', sq3)
hammer_sq3 <- grep('land.*hammer', sq3)
missed in 3rd sequence
kicks_sq3m <- grep('miss.*kick', sq3)
elbows_sq3m <- grep('miss.*elbow', sq3)
knees_sq3m <- grep('miss.*knee', sq3)
jab_sq3m <- grep('miss.*jab', sq3)
cross_sq3m <- grep('miss.*cross', sq3)
hook_sq3m <- grep('miss.*hook', sq3)
upper_sq3m <- grep('miss.*upp', sq3)
takedown_sq3m <- grep('miss.*takedown', sq3)
hammer_sq3m <- grep('miss.*hammer', sq3)
get fighter2’s list of actions/reactions
sq1b <- sq1X2
lands 1st sequence X2, ends with ‘b’, no ‘l’ to either for lands
kicks_sq1b <- grep('land.*kick', sq1b)
elbows_sq1b <- grep('land.*elbow', sq1b)
knees_sq1b <- grep('land.*knee', sq1b)
jab_sq1b <- grep('land.*jab', sq1b)
cross_sq1b <- grep('land.*cross', sq1b)
hook_sq1b <- grep('land.*hook', sq1b)
upper_sq1b <- grep('land.*upp', sq1b)
takedown_sq1b <- grep('land.*takedown', sq1b)
hammer_sq1b <- grep('land.*hammer', sq1b)
received by X1 in 1st sequence, duplicated above as equivalent to hits landed 1st seq of x2
kicks_sq1r <- grep('land.*kick', sq1b)
elbows_sq1r <- grep('land.*elbow', sq1b)
knees_sq1r <- grep('land.*knee', sq1b)
jab_sq1r <- grep('land.*jab', sq1b)
cross_sq1r <- grep('land.*cross', sq1b)
hook_sq1r <- grep('land.*hook', sq1b)
upper_sq1r <- grep('land.*upp', sq1b)
takedown_sq1r <- grep('land.*takedown', sq1b)
hammer_sq1r <- grep('land.*hammer', sq1b)
missed in 1st sequence X2
kicks_sq1bm <- grep('miss.*kick', sq1b)
elbows_sq1bm <- grep('miss.*elbow', sq1b)
knees_sq1bm <- grep('miss.*knee', sq1b)
jab_sq1bm <- grep('miss.*jab', sq1b)
cross_sq1bm <- grep('miss.*cross', sq1b)
hook_sq1bm <- grep('miss.*hook', sq1b)
upper_sq1bm <- grep('miss.*upp', sq1b)
takedown_sq1bm <- grep('miss.*takedown', sq1b)
hammer_sq1bm <- grep('miss.*hammer', sq1b)
received by x2 in 1st seq equivalent to lands by x1
kicks_sq1br <- grep('land.*kick', sq1)
elbows_sq1br <- grep('land.*elbow', sq1)
knees_sq1br <- grep('land.*knee', sq1)
jab_sq1br <- grep('land.*jab', sq1)
cross_sq1br <- grep('land.*cross', sq1)
hook_sq1br <- grep('land.*hook', sq1)
upper_sq1br <- grep('land.*upp', sq1)
takedown_sq1br <- grep('land.*takedown', sq1)
hammer_sq1br <- grep('land.*hammer', sq1)
lands 2nd sequence x2
sq2b <- sq2X2
kicks_sq2b <- grep('land.*kick', sq2b)
elbows_sq2b <- grep('land.*elbow', sq2b)
knees_sq2b <- grep('land.*knee', sq2b)
jab_sq2b <- grep('land.*jab', sq2b)
cross_sq2b <- grep('land.*cross', sq2b)
hook_sq2b <- grep('land.*hook', sq2b)
upper_sq2b <- grep('land.*upp', sq2b)
takedown_sq2b <- grep('land.*takedown', sq2b)
hammer_sq2b <- grep('land.*hammer', sq2b)
received by X1 in 2nd sequence equivalent to hits landed by x2 seq 2
kicks_sq2r <- grep('land.*kick', sq2b)
elbows_sq2r <- grep('land.*elbow', sq2b)
knees_sq2r <- grep('land.*knee', sq2b)
jab_sq2r <- grep('land.*jab', sq2b)
cross_sq2r <- grep('land.*cross', sq2b)
hook_sq2r <- grep('land.*hook', sq2b)
upper_sq2r <- grep('land.*upp', sq2b)
takedown_sq2r <- grep('land.*takedown', sq2b)
hammer_sq2r <- grep('land.*hammer', sq2b)
missed in 2nd sequence x2
kicks_sq2bm <- grep('miss.*kick', sq2b)
elbows_sq2bm <- grep('miss.*elbow', sq2b)
knees_sq2bm <- grep('miss.*knee', sq2b)
jab_sq2bm <- grep('miss.*jab', sq2b)
cross_sq2bm <- grep('miss.*cross', sq2b)
hook_sq2bm <- grep('miss.*hook', sq2b)
upper_sq2bm <- grep('miss.*upp', sq2b)
takedown_sq2bm <- grep('miss.*takedown', sq2b)
hammer_sq2bm <- grep('miss.*hammer', sq2b)
received 2nd seq by x2 equivalent to hits landed by x1 in seq 2
kicks_sq2br <- grep('land.*kick', sq2)
elbows_sq2br <- grep('land.*elbow', sq2)
knees_sq2br <- grep('land.*knee', sq2)
jab_sq2br <- grep('land.*jab', sq2)
cross_sq2br <- grep('land.*cross', sq2)
hook_sq2br <- grep('land.*hook', sq2)
upper_sq2br <- grep('land.*upp', sq2)
takedown_sq2br <- grep('land.*takedown', sq2)
hammer_sq2br <- grep('land.*hammer', sq2)
lands 3rd sequence x2
sq3b <- sq3X2
kicks_sq3b <- grep('land.*kick', sq3b)
elbows_sq3b <- grep('land.*elbow', sq3b)
knees_sq3b <- grep('land.*knee', sq3b)
jab_sq3b <- grep('land.*jab', sq3b)
cross_sq3b <- grep('land.*cross', sq3b)
hook_sq3b <- grep('land.*hook', sq3b)
upper_sq3b <- grep('land.*upp', sq3b)
takedown_sq3b <- grep('land.*takedown', sq3b)
hammer_sq3b <- grep('land.*hammer', sq3b)
received by X1 in 3rd sequence equivalent to hits landed by X2 in seq 3
kicks_sq3r <- grep('land.*kick', sq3b)
elbows_sq3r <- grep('land.*elbow', sq3b)
knees_sq3r <- grep('land.*knee', sq3b)
jab_sq3r <- grep('land.*jab', sq3b)
cross_sq3r <- grep('land.*cross', sq3b)
hook_sq3r <- grep('land.*hook', sq3b)
upper_sq3r <- grep('land.*upp', sq3b)
takedown_sq3r <- grep('land.*takedown', sq3b)
hammer_sq3r <- grep('land.*hammer', sq3b)
missed in 3rd sequence x2
kicks_sq3bm <- grep('miss.*kick', sq3b)
elbows_sq3bm <- grep('miss.*elbow', sq3b)
knees_sq3bm <- grep('miss.*knee', sq3b)
jab_sq3bm <- grep('miss.*jab', sq3b)
cross_sq3bm <- grep('miss.*cross', sq3b)
hook_sq3bm <- grep('miss.*hook', sq3b)
upper_sq3bm <- grep('miss.*upp', sq3b)
takedown_sq3bm <- grep('miss.*takedown', sq3b)
hammer_sq3bm <- grep('miss.*hammer', sq3b)
received in seq 3 by x2 equivalent to hits landed by x1 in seq3
kicks_sq3br <- grep('land.*kick', sq3)
elbows_sq3br <- grep('land.*elbow', sq3)
knees_sq3br <- grep('land.*knee', sq3)
jab_sq3br <- grep('land.*jab', sq3)
cross_sq3br <- grep('land.*cross', sq3)
hook_sq3br <- grep('land.*hook', sq3)
upper_sq3br <- grep('land.*upp', sq3)
takedown_sq3br <- grep('land.*takedown', sq3)
hammer_sq3br <- grep('land.*hammer', sq3)
This adds the fields (54 fields for each sequence) to the table of actions per second, by creating table extensions of Added, then renaming the 3rd sequence of actions.
added_landed <- mutate(Added, Crossl.X1=0, Kneel.X1=0, Elbowl.X1=0, Hookl.X1=0, Jabl.X1=0, Kickl.X1=0,
Crossl.X2=0, Kneel.X2=0, Elbowl.X2=0, Hookl.X2=0, Jabl.X2=0, Kickl.X2=0, upperl.X1=0,
upperl.X2=0, takedownl.X1=0, takedownl.X2=0, hammerl.X1=0, hammerl.X2=0
, Cross2l.X1=0, Knee2l.X1=0, Elbow2l.X1=0, Hook2l.X1=0, Jab2l.X1=0, Kick2l.X1=0,
Cross2l.X2=0, Knee2l.X2=0, Elbow2l.X2=0, Hook2l.X2=0, Jab2l.X2=0, Kick2l.X2=0, upper2l.X1=0,
upper2l.X2=0, takedown2l.X1=0, takedown2l.X2=0, hammer2l.X1=0, hammer2l.X2=0
, Cross3l.X1=0, Knee3l.X1=0, Elbow3l.X1=0, Hook3l.X1=0, Jab3l.X1=0, Kick3l.X1=0,
Cross3l.X2=0, Knee3l.X2=0, Elbow3l.X2=0, Hook3l.X2=0, Jab3l.X2=0, Kick3l.X2=0, upper3l.X1=0,
upper3l.X2=0, takedown3l.X1=0, takedown3l.X2=0, hammer3l.X1=0, hammer3l.X2=0)
added_missed <- mutate(added_landed, Crossm.X1=0, Kneem.X1=0, Elbowm.X1=0, Hookm.X1=0, Jabm.X1=0, Kickm.X1=0,
Crossm.X2=0, Kneem.X2=0, Elbowm.X2=0, Hookm.X2=0, Jabm.X2=0, Kickm.X2=0, upperm.X1=0,
upperm.X2=0, takedownm.X1=0, takedownm.X2=0, hammerm.X1=0, hammerm.X2=0
, Cross2m.X1=0, Knee2m.X1=0, Elbow2m.X1=0, Hook2m.X1=0, Jab2m.X1=0, Kick2m.X1=0,
Cross2m.X2=0, Knee2m.X2=0, Elbow2m.X2=0, Hook2m.X2=0, Jab2m.X2=0, Kick2m.X2=0, upper2m.X1=0,
upper2m.X2=0, takedown2m.X1=0, takedown2m.X2=0, hammer2m.X1=0, hammer2m.X2=0
, Cross3m.X1=0, Knee3m.X1=0, Elbow3m.X1=0, Hook3m.X1=0, Jab3m.X1=0, Kick3m.X1=0,
Cross3m.X2=0, Knee3m.X2=0, Elbow3m.X2=0, Hook3m.X2=0, Jab3m.X2=0, Kick3m.X2=0, upper3m.X1=0,
upper3m.X2=0, takedown3m.X1=0, takedown3m.X2=0, hammer3m.X1=0, hammer3m.X2=0)
added_received <- mutate(added_missed, Crossr.X1=0, Kneer.X1=0, Elbowr.X1=0, Hookr.X1=0, Jabr.X1=0, Kickr.X1=0,
Crossr.X2=0, Kneer.X2=0, Elbowr.X2=0, Hookr.X2=0, Jabr.X2=0, Kickr.X2=0, upperr.X1=0,
upperr.X2=0, takedownr.X1=0, takedownr.X2=0, hammerr.X1=0, hammerr.X2=0
, Cross2r.X1=0, Knee2r.X1=0, Elbow2r.X1=0, Hook2r.X1=0, Jab2r.X1=0, Kick2r.X1=0,
Cross2r.X2=0, Knee2r.X2=0, Elbow2r.X2=0, Hook2r.X2=0, Jab2r.X2=0, Kick2r.X2=0, upper2r.X1=0,
upper2r.X2=0, takedown2r.X1=0, takedown2r.X2=0, hammer2r.X1=0, hammer2r.X2=0
, Cross3r.X1=0, Knee3r.X1=0, Elbow3r.X1=0, Hook3r.X1=0, Jab3r.X1=0, Kick3r.X1=0,
Cross3r.X2=0, Knee3r.X2=0, Elbow3r.X2=0, Hook3r.X2=0, Jab3r.X2=0, Kick3r.X2=0, upper3r.X1=0,
upper3r.X2=0, takedown3r.X1=0, takedown3r.X2=0, hammer3r.X1=0, hammer3r.X2=0)
Save original Added data table and make a new table called Added that is the combined received, missed, and landed binary/dummy columns just mutated to each other above using dplyr.
Added1 <- Added
Added <- added_received
head(Added,10)
## Round SecondsIntoRound SecondsLastRoundAction cmTotHitsR.X1 cmTotHitsL.X1
## 1 1 NA NA NA NA
## 2 1 NA NA NA NA
## 3 1 NA NA NA NA
## 4 1 NA NA NA NA
## 5 1 NA NA NA NA
## 6 1 NA NA NA NA
## 7 1 NA NA NA NA
## 8 1 NA NA NA NA
## 9 1 NA NA NA NA
## 10 1 NA NA NA NA
## cmTotHitsM.X1 Hits.Recvd.X1 Hits.Lnd.X1 Hits.Mssd.X1 cmTotHitsR.X2
## 1 NA NA NA NA NA
## 2 NA NA NA NA NA
## 3 NA NA NA NA NA
## 4 NA NA NA NA NA
## 5 NA NA NA NA NA
## 6 NA NA NA NA NA
## 7 NA NA NA NA NA
## 8 NA NA NA NA NA
## 9 NA NA NA NA NA
## 10 NA NA NA NA NA
## cmTotHitsL.X2 cmTotHitsM.X2 Hits.Recvd.X2 Hits.Lnd.X2 Hits.Mssd.X2 Time
## 1 NA NA NA NA NA 4:53
## 2 NA NA NA NA NA 4:48
## 3 NA NA NA NA NA 4:47
## 4 NA NA NA NA NA 4:45
## 5 NA NA NA NA NA 4:41
## 6 NA NA NA NA NA 4:40
## 7 NA NA NA NA NA 4:28
## 8 NA NA NA NA NA 4:25
## 9 NA NA NA NA NA 4:19
## 10 NA NA NA NA NA 4:18
## FighterActionReactions.X1
## 1 missed R mt kick to low L leg
## 2 missed L jab
## 3 <NA>
## 4 missed R mt kick to low L leg
## 5 lands L mt kick to L leg
## 6 missed L jab, missed R cross
## 7 lands L mt kick to L leg, missed R cross to face
## 8 <NA>
## 9 holding R leg hold starts
## 10 holding R leg hold continues
## FightersActionsReactions.X2 Notes Crossl.X1
## 1 <NA> Germaine 0
## 2 <NA> Germaine 0
## 3 missed L mt kick to L low leg Germaine 0
## 4 <NA> Germaine 0
## 5 <NA> Germaine 0
## 6 lands L mt kick to L leg Germaine 0
## 7 <NA> Germaine 0
## 8 lands L mt kick to L low leg Germaine 0
## 9 caught in R leg hold and missed L mt kick to body Germaine 0
## 10 caught in R leg hold Germaine 0
## Kneel.X1 Elbowl.X1 Hookl.X1 Jabl.X1 Kickl.X1 Crossl.X2 Kneel.X2 Elbowl.X2
## 1 0 0 0 0 0 0 0 0
## 2 0 0 0 0 0 0 0 0
## 3 0 0 0 0 0 0 0 0
## 4 0 0 0 0 0 0 0 0
## 5 0 0 0 0 0 0 0 0
## 6 0 0 0 0 0 0 0 0
## 7 0 0 0 0 0 0 0 0
## 8 0 0 0 0 0 0 0 0
## 9 0 0 0 0 0 0 0 0
## 10 0 0 0 0 0 0 0 0
## Hookl.X2 Jabl.X2 Kickl.X2 upperl.X1 upperl.X2 takedownl.X1 takedownl.X2
## 1 0 0 0 0 0 0 0
## 2 0 0 0 0 0 0 0
## 3 0 0 0 0 0 0 0
## 4 0 0 0 0 0 0 0
## 5 0 0 0 0 0 0 0
## 6 0 0 0 0 0 0 0
## 7 0 0 0 0 0 0 0
## 8 0 0 0 0 0 0 0
## 9 0 0 0 0 0 0 0
## 10 0 0 0 0 0 0 0
## hammerl.X1 hammerl.X2 Cross2l.X1 Knee2l.X1 Elbow2l.X1 Hook2l.X1 Jab2l.X1
## 1 0 0 0 0 0 0 0
## 2 0 0 0 0 0 0 0
## 3 0 0 0 0 0 0 0
## 4 0 0 0 0 0 0 0
## 5 0 0 0 0 0 0 0
## 6 0 0 0 0 0 0 0
## 7 0 0 0 0 0 0 0
## 8 0 0 0 0 0 0 0
## 9 0 0 0 0 0 0 0
## 10 0 0 0 0 0 0 0
## Kick2l.X1 Cross2l.X2 Knee2l.X2 Elbow2l.X2 Hook2l.X2 Jab2l.X2 Kick2l.X2
## 1 0 0 0 0 0 0 0
## 2 0 0 0 0 0 0 0
## 3 0 0 0 0 0 0 0
## 4 0 0 0 0 0 0 0
## 5 0 0 0 0 0 0 0
## 6 0 0 0 0 0 0 0
## 7 0 0 0 0 0 0 0
## 8 0 0 0 0 0 0 0
## 9 0 0 0 0 0 0 0
## 10 0 0 0 0 0 0 0
## upper2l.X1 upper2l.X2 takedown2l.X1 takedown2l.X2 hammer2l.X1 hammer2l.X2
## 1 0 0 0 0 0 0
## 2 0 0 0 0 0 0
## 3 0 0 0 0 0 0
## 4 0 0 0 0 0 0
## 5 0 0 0 0 0 0
## 6 0 0 0 0 0 0
## 7 0 0 0 0 0 0
## 8 0 0 0 0 0 0
## 9 0 0 0 0 0 0
## 10 0 0 0 0 0 0
## Cross3l.X1 Knee3l.X1 Elbow3l.X1 Hook3l.X1 Jab3l.X1 Kick3l.X1 Cross3l.X2
## 1 0 0 0 0 0 0 0
## 2 0 0 0 0 0 0 0
## 3 0 0 0 0 0 0 0
## 4 0 0 0 0 0 0 0
## 5 0 0 0 0 0 0 0
## 6 0 0 0 0 0 0 0
## 7 0 0 0 0 0 0 0
## 8 0 0 0 0 0 0 0
## 9 0 0 0 0 0 0 0
## 10 0 0 0 0 0 0 0
## Knee3l.X2 Elbow3l.X2 Hook3l.X2 Jab3l.X2 Kick3l.X2 upper3l.X1 upper3l.X2
## 1 0 0 0 0 0 0 0
## 2 0 0 0 0 0 0 0
## 3 0 0 0 0 0 0 0
## 4 0 0 0 0 0 0 0
## 5 0 0 0 0 0 0 0
## 6 0 0 0 0 0 0 0
## 7 0 0 0 0 0 0 0
## 8 0 0 0 0 0 0 0
## 9 0 0 0 0 0 0 0
## 10 0 0 0 0 0 0 0
## takedown3l.X1 takedown3l.X2 hammer3l.X1 hammer3l.X2 Crossm.X1 Kneem.X1
## 1 0 0 0 0 0 0
## 2 0 0 0 0 0 0
## 3 0 0 0 0 0 0
## 4 0 0 0 0 0 0
## 5 0 0 0 0 0 0
## 6 0 0 0 0 0 0
## 7 0 0 0 0 0 0
## 8 0 0 0 0 0 0
## 9 0 0 0 0 0 0
## 10 0 0 0 0 0 0
## Elbowm.X1 Hookm.X1 Jabm.X1 Kickm.X1 Crossm.X2 Kneem.X2 Elbowm.X2 Hookm.X2
## 1 0 0 0 0 0 0 0 0
## 2 0 0 0 0 0 0 0 0
## 3 0 0 0 0 0 0 0 0
## 4 0 0 0 0 0 0 0 0
## 5 0 0 0 0 0 0 0 0
## 6 0 0 0 0 0 0 0 0
## 7 0 0 0 0 0 0 0 0
## 8 0 0 0 0 0 0 0 0
## 9 0 0 0 0 0 0 0 0
## 10 0 0 0 0 0 0 0 0
## Jabm.X2 Kickm.X2 upperm.X1 upperm.X2 takedownm.X1 takedownm.X2 hammerm.X1
## 1 0 0 0 0 0 0 0
## 2 0 0 0 0 0 0 0
## 3 0 0 0 0 0 0 0
## 4 0 0 0 0 0 0 0
## 5 0 0 0 0 0 0 0
## 6 0 0 0 0 0 0 0
## 7 0 0 0 0 0 0 0
## 8 0 0 0 0 0 0 0
## 9 0 0 0 0 0 0 0
## 10 0 0 0 0 0 0 0
## hammerm.X2 Cross2m.X1 Knee2m.X1 Elbow2m.X1 Hook2m.X1 Jab2m.X1 Kick2m.X1
## 1 0 0 0 0 0 0 0
## 2 0 0 0 0 0 0 0
## 3 0 0 0 0 0 0 0
## 4 0 0 0 0 0 0 0
## 5 0 0 0 0 0 0 0
## 6 0 0 0 0 0 0 0
## 7 0 0 0 0 0 0 0
## 8 0 0 0 0 0 0 0
## 9 0 0 0 0 0 0 0
## 10 0 0 0 0 0 0 0
## Cross2m.X2 Knee2m.X2 Elbow2m.X2 Hook2m.X2 Jab2m.X2 Kick2m.X2 upper2m.X1
## 1 0 0 0 0 0 0 0
## 2 0 0 0 0 0 0 0
## 3 0 0 0 0 0 0 0
## 4 0 0 0 0 0 0 0
## 5 0 0 0 0 0 0 0
## 6 0 0 0 0 0 0 0
## 7 0 0 0 0 0 0 0
## 8 0 0 0 0 0 0 0
## 9 0 0 0 0 0 0 0
## 10 0 0 0 0 0 0 0
## upper2m.X2 takedown2m.X1 takedown2m.X2 hammer2m.X1 hammer2m.X2 Cross3m.X1
## 1 0 0 0 0 0 0
## 2 0 0 0 0 0 0
## 3 0 0 0 0 0 0
## 4 0 0 0 0 0 0
## 5 0 0 0 0 0 0
## 6 0 0 0 0 0 0
## 7 0 0 0 0 0 0
## 8 0 0 0 0 0 0
## 9 0 0 0 0 0 0
## 10 0 0 0 0 0 0
## Knee3m.X1 Elbow3m.X1 Hook3m.X1 Jab3m.X1 Kick3m.X1 Cross3m.X2 Knee3m.X2
## 1 0 0 0 0 0 0 0
## 2 0 0 0 0 0 0 0
## 3 0 0 0 0 0 0 0
## 4 0 0 0 0 0 0 0
## 5 0 0 0 0 0 0 0
## 6 0 0 0 0 0 0 0
## 7 0 0 0 0 0 0 0
## 8 0 0 0 0 0 0 0
## 9 0 0 0 0 0 0 0
## 10 0 0 0 0 0 0 0
## Elbow3m.X2 Hook3m.X2 Jab3m.X2 Kick3m.X2 upper3m.X1 upper3m.X2 takedown3m.X1
## 1 0 0 0 0 0 0 0
## 2 0 0 0 0 0 0 0
## 3 0 0 0 0 0 0 0
## 4 0 0 0 0 0 0 0
## 5 0 0 0 0 0 0 0
## 6 0 0 0 0 0 0 0
## 7 0 0 0 0 0 0 0
## 8 0 0 0 0 0 0 0
## 9 0 0 0 0 0 0 0
## 10 0 0 0 0 0 0 0
## takedown3m.X2 hammer3m.X1 hammer3m.X2 Crossr.X1 Kneer.X1 Elbowr.X1 Hookr.X1
## 1 0 0 0 0 0 0 0
## 2 0 0 0 0 0 0 0
## 3 0 0 0 0 0 0 0
## 4 0 0 0 0 0 0 0
## 5 0 0 0 0 0 0 0
## 6 0 0 0 0 0 0 0
## 7 0 0 0 0 0 0 0
## 8 0 0 0 0 0 0 0
## 9 0 0 0 0 0 0 0
## 10 0 0 0 0 0 0 0
## Jabr.X1 Kickr.X1 Crossr.X2 Kneer.X2 Elbowr.X2 Hookr.X2 Jabr.X2 Kickr.X2
## 1 0 0 0 0 0 0 0 0
## 2 0 0 0 0 0 0 0 0
## 3 0 0 0 0 0 0 0 0
## 4 0 0 0 0 0 0 0 0
## 5 0 0 0 0 0 0 0 0
## 6 0 0 0 0 0 0 0 0
## 7 0 0 0 0 0 0 0 0
## 8 0 0 0 0 0 0 0 0
## 9 0 0 0 0 0 0 0 0
## 10 0 0 0 0 0 0 0 0
## upperr.X1 upperr.X2 takedownr.X1 takedownr.X2 hammerr.X1 hammerr.X2
## 1 0 0 0 0 0 0
## 2 0 0 0 0 0 0
## 3 0 0 0 0 0 0
## 4 0 0 0 0 0 0
## 5 0 0 0 0 0 0
## 6 0 0 0 0 0 0
## 7 0 0 0 0 0 0
## 8 0 0 0 0 0 0
## 9 0 0 0 0 0 0
## 10 0 0 0 0 0 0
## Cross2r.X1 Knee2r.X1 Elbow2r.X1 Hook2r.X1 Jab2r.X1 Kick2r.X1 Cross2r.X2
## 1 0 0 0 0 0 0 0
## 2 0 0 0 0 0 0 0
## 3 0 0 0 0 0 0 0
## 4 0 0 0 0 0 0 0
## 5 0 0 0 0 0 0 0
## 6 0 0 0 0 0 0 0
## 7 0 0 0 0 0 0 0
## 8 0 0 0 0 0 0 0
## 9 0 0 0 0 0 0 0
## 10 0 0 0 0 0 0 0
## Knee2r.X2 Elbow2r.X2 Hook2r.X2 Jab2r.X2 Kick2r.X2 upper2r.X1 upper2r.X2
## 1 0 0 0 0 0 0 0
## 2 0 0 0 0 0 0 0
## 3 0 0 0 0 0 0 0
## 4 0 0 0 0 0 0 0
## 5 0 0 0 0 0 0 0
## 6 0 0 0 0 0 0 0
## 7 0 0 0 0 0 0 0
## 8 0 0 0 0 0 0 0
## 9 0 0 0 0 0 0 0
## 10 0 0 0 0 0 0 0
## takedown2r.X1 takedown2r.X2 hammer2r.X1 hammer2r.X2 Cross3r.X1 Knee3r.X1
## 1 0 0 0 0 0 0
## 2 0 0 0 0 0 0
## 3 0 0 0 0 0 0
## 4 0 0 0 0 0 0
## 5 0 0 0 0 0 0
## 6 0 0 0 0 0 0
## 7 0 0 0 0 0 0
## 8 0 0 0 0 0 0
## 9 0 0 0 0 0 0
## 10 0 0 0 0 0 0
## Elbow3r.X1 Hook3r.X1 Jab3r.X1 Kick3r.X1 Cross3r.X2 Knee3r.X2 Elbow3r.X2
## 1 0 0 0 0 0 0 0
## 2 0 0 0 0 0 0 0
## 3 0 0 0 0 0 0 0
## 4 0 0 0 0 0 0 0
## 5 0 0 0 0 0 0 0
## 6 0 0 0 0 0 0 0
## 7 0 0 0 0 0 0 0
## 8 0 0 0 0 0 0 0
## 9 0 0 0 0 0 0 0
## 10 0 0 0 0 0 0 0
## Hook3r.X2 Jab3r.X2 Kick3r.X2 upper3r.X1 upper3r.X2 takedown3r.X1
## 1 0 0 0 0 0 0
## 2 0 0 0 0 0 0
## 3 0 0 0 0 0 0
## 4 0 0 0 0 0 0
## 5 0 0 0 0 0 0
## 6 0 0 0 0 0 0
## 7 0 0 0 0 0 0
## 8 0 0 0 0 0 0
## 9 0 0 0 0 0 0
## 10 0 0 0 0 0 0
## takedown3r.X2 hammer3r.X1 hammer3r.X2
## 1 0 0 0
## 2 0 0 0
## 3 0 0 0
## 4 0 0 0
## 5 0 0 0
## 6 0 0 0
## 7 0 0 0
## 8 0 0 0
## 9 0 0 0
## 10 0 0 0
The following code adds a value of 1 if the grep’d binary field has a count in that index of observation, otherwise, it will be 0.
Added[cross_sq1,'Crossl.X1'] <- 1
Added[cross_sq1b,'Crossl.X2'] <- 1
Added[hook_sq1,'Hookl.X1'] <- 1
Added[hook_sq1b,'Hookl.X2'] <- 1
Added[jab_sq1,'Jabl.X1'] <- 1
Added[jab_sq1b,'Jabl.X2'] <- 1
Added[knees_sq1,'Kneel.X1'] <- 1
Added[knees_sq1b,'Kneel.X2'] <- 1
Added[elbows_sq1,'Elbowl.X1'] <- 1
Added[elbows_sq1b,'Elbowl.X2'] <- 1
Added[kicks_sq1,'Kickl.X1'] <- 1
Added[kicks_sq1b,'Kickl.X2'] <- 1
Added[upper_sq1,'upperl.X1'] <- 1
Added[upper_sq1b,'upperl.X2'] <- 1
Added[takedown_sq1,'takedownl.X1'] <- 1
Added[takedown_sq1b,'takedownl.X2'] <- 1
Added[hammer_sq1,'hammerl.X1'] <- 1
Added[hammer_sq1b,'hammerl.X2'] <- 1
Added[cross_sq2,'Cross2l.X1'] <- 1
Added[cross_sq2b,'Cross2l.X2'] <- 1
Added[hook_sq2,'Hook2l.X1'] <- 1
Added[hook_sq2b,'Hook2l.X2'] <- 1
Added[jab_sq2,'Jab2l.X1'] <- 1
Added[jab_sq2b,'Jab2l.X2'] <- 1
Added[knees_sq2,'Knee2l.X1'] <- 1
Added[knees_sq2b,'Knee2l.X2'] <- 1
Added[elbows_sq2,'Elbow2l.X1'] <- 1
Added[elbows_sq2b,'Elbow2l.X2'] <- 1
Added[kicks_sq2,'Kick2l.X1'] <- 1
Added[kicks_sq2b,'Kick2l.X2'] <- 1
Added[upper_sq2,'upper2l.X1'] <- 1
Added[upper_sq2b,'upper2l.X2'] <- 1
Added[takedown_sq2,'takedown2l.X1'] <- 1
Added[takedown_sq2b,'takedown2l.X2'] <- 1
Added[hammer_sq2,'hammer2l.X1'] <- 1
Added[hammer_sq2b,'hammer2l.X2'] <- 1
Added[cross_sq3,'Cross3l.X1'] <- 1
Added[cross_sq3b,'Cross3l.X2'] <- 1
Added[hook_sq3,'Hook3l.X1'] <- 1
Added[hook_sq3b,'Hook3l.X2'] <- 1
Added[jab_sq3,'Jab3l.X1'] <- 1
Added[jab_sq3b,'Jab3l.X2'] <- 1
Added[knees_sq3,'Knee3l.X1'] <- 1
Added[knees_sq3b,'Knee3l.X2'] <- 1
Added[elbows_sq3,'Elbow3l.X1'] <- 1
Added[elbows_sq3b,'Elbow3l.X2'] <- 1
Added[kicks_sq3,'Kick3l.X1'] <- 1
Added[kicks_sq3b,'Kick3l.X2'] <- 1
Added[upper_sq3,'upper3l.X1'] <- 1
Added[upper_sq3b,'upper3l.X2'] <- 1
Added[takedown_sq3,'takedown3l.X1'] <- 1
Added[takedown_sq3b,'takedown3l.X2'] <- 1
Added[hammer_sq3,'hammer3l.X1'] <- 1
Added[hammer_sq3b,'hammer3l.X2'] <- 1
Added[cross_sq1m,'Crossm.X1'] <- 1
Added[cross_sq1bm,'Crossm.X2'] <- 1
Added[hook_sq1m,'Hookm.X1'] <- 1
Added[hook_sq1bm,'Hookm.X2'] <- 1
Added[jab_sq1m,'Jabm.X1'] <- 1
Added[jab_sq1bm,'Jabm.X2'] <- 1
Added[knees_sq1m,'Kneem.X1'] <- 1
Added[knees_sq1bm,'Kneem.X2'] <- 1
Added[elbows_sq1m,'Elbowm.X1'] <- 1
Added[elbows_sq1bm,'Elbowm.X2'] <- 1
Added[kicks_sq1m,'Kickm.X1'] <- 1
Added[kicks_sq1bm,'Kickm.X2'] <- 1
Added[upper_sq1m,'upperm.X1'] <- 1
Added[upper_sq1bm,'upperm.X2'] <- 1
Added[takedown_sq1m,'takedownm.X1'] <- 1
Added[takedown_sq1bm,'takedownm.X2'] <- 1
Added[hammer_sq1m,'hammerm.X1'] <- 1
Added[hammer_sq1bm,'hammerm.X2'] <- 1
Added[cross_sq2m,'Cross2m.X1'] <- 1
Added[cross_sq2bm,'Cross2m.X2'] <- 1
Added[hook_sq2m,'Hook2m.X1'] <- 1
Added[hook_sq2bm,'Hook2m.X2'] <- 1
Added[jab_sq2m,'Jab2m.X1'] <- 1
Added[jab_sq2bm,'Jab2m.X2'] <- 1
Added[knees_sq2m,'Knee2m.X1'] <- 1
Added[knees_sq2bm,'Knee2m.X2'] <- 1
Added[elbows_sq2m,'Elbow2m.X1'] <- 1
Added[elbows_sq2bm,'Elbow2m.X2'] <- 1
Added[kicks_sq2m,'Kick2m.X1'] <- 1
Added[kicks_sq2bm,'Kick2m.X2'] <- 1
Added[upper_sq2m,'upper2m.X1'] <- 1
Added[upper_sq2bm,'upper2m.X2'] <- 1
Added[takedown_sq2m,'takedown2m.X1'] <- 1
Added[takedown_sq2bm,'takedown2m.X2'] <- 1
Added[hammer_sq2m,'hammer2m.X1'] <- 1
Added[hammer_sq2bm,'hammer2m.X2'] <- 1
Added[cross_sq3m,'Cross3m.X1'] <- 1
Added[cross_sq3bm,'Cross3m.X2'] <- 1
Added[hook_sq3m,'Hook3m.X1'] <- 1
Added[hook_sq3bm,'Hook3m.X2'] <- 1
Added[jab_sq3m,'Jab3m.X1'] <- 1
Added[jab_sq3bm,'Jab3m.X2'] <- 1
Added[knees_sq3m,'Knee3m.X1'] <- 1
Added[knees_sq3bm,'Knee3m.X2'] <- 1
Added[elbows_sq3m,'Elbow3m.X1'] <- 1
Added[elbows_sq3bm,'Elbow3m.X2'] <- 1
Added[kicks_sq3m,'Kick3m.X1'] <- 1
Added[kicks_sq3bm,'Kick3m.X2'] <- 1
Added[upper_sq3m,'upper3m.X1'] <- 1
Added[upper_sq3bm,'upper3m.X2'] <- 1
Added[takedown_sq3m,'takedown3m.X1'] <- 1
Added[takedown_sq3bm,'takedown3m.X2'] <- 1
Added[hammer_sq3m,'hammer3m.X1'] <- 1
Added[hammer_sq3bm,'hammer3m.X2'] <- 1
Added[cross_sq1r,'Crossr.X1'] <- 1
Added[cross_sq1br,'Crossr.X2'] <- 1
Added[hook_sq1r,'Hookr.X1'] <- 1
Added[hook_sq1br,'Hookr.X2'] <- 1
Added[jab_sq1r,'Jabr.X1'] <- 1
Added[jab_sq1br,'Jabr.X2'] <- 1
Added[knees_sq1r,'Kneer.X1'] <- 1
Added[knees_sq1br,'Kneer.X2'] <- 1
Added[elbows_sq1r,'Elbowr.X1'] <- 1
Added[elbows_sq1br,'Elbowr.X2'] <- 1
Added[kicks_sq1r,'Kickr.X1'] <- 1
Added[kicks_sq1br,'Kickr.X2'] <- 1
Added[upper_sq1r,'upperr.X1'] <- 1
Added[upper_sq1br,'upperr.X2'] <- 1
Added[takedown_sq1r,'takedownr.X1'] <- 1
Added[takedown_sq1br,'takedownr.X2'] <- 1
Added[hammer_sq1r,'hammerr.X1'] <- 1
Added[hammer_sq1br,'hammerr.X2'] <- 1
Added[cross_sq2r,'Cross2r.X1'] <- 1
Added[cross_sq2br,'Cross2r.X2'] <- 1
Added[hook_sq2r,'Hook2r.X1'] <- 1
Added[hook_sq2br,'Hook2r.X2'] <- 1
Added[jab_sq2r,'Jab2r.X1'] <- 1
Added[jab_sq2br,'Jab2r.X2'] <- 1
Added[knees_sq2r,'Knee2r.X1'] <- 1
Added[knees_sq2br,'Knee2r.X2'] <- 1
Added[elbows_sq2r,'Elbow2r.X1'] <- 1
Added[elbows_sq2br,'Elbow2r.X2'] <- 1
Added[kicks_sq2r,'Kick2r.X1'] <- 1
Added[kicks_sq2br,'Kick2r.X2'] <- 1
Added[upper_sq2r,'upper2r.X1'] <- 1
Added[upper_sq2br,'upper2r.X2'] <- 1
Added[takedown_sq2r,'takedown2r.X1'] <- 1
Added[takedown_sq2br,'takedown2r.X2'] <- 1
Added[hammer_sq2r,'hammer2r.X1'] <- 1
Added[hammer_sq2br,'hammer2r.X2'] <- 1
Added[cross_sq3r,'Cross3r.X1'] <- 1
Added[cross_sq3br,'Cross3r.X2'] <- 1
Added[hook_sq3r,'Hook3r.X1'] <- 1
Added[hook_sq3br,'Hook3r.X2'] <- 1
Added[jab_sq3r,'Jab3r.X1'] <- 1
Added[jab_sq3br,'Jab3r.X2'] <- 1
Added[knees_sq3r,'Knee3r.X1'] <- 1
Added[knees_sq3br,'Knee3r.X2'] <- 1
Added[elbows_sq3r,'Elbow3r.X1'] <- 1
Added[elbows_sq3br,'Elbow3r.X2'] <- 1
Added[kicks_sq3r,'Kick3r.X1'] <- 1
Added[kicks_sq3br,'Kick3r.X2'] <- 1
Added[upper_sq3r,'upper3r.X1'] <- 1
Added[upper_sq3br,'upper3r.X2'] <- 1
Added[takedown_sq3r,'takedown3r.X1'] <- 1
Added[takedown_sq3br,'takedown3r.X2'] <- 1
Added[hammer_sq3r,'hammer3r.X1'] <- 1
Added[hammer_sq3br,'hammer3r.X2'] <- 1
colnames(Added)
## [1] "Round" "SecondsIntoRound"
## [3] "SecondsLastRoundAction" "cmTotHitsR.X1"
## [5] "cmTotHitsL.X1" "cmTotHitsM.X1"
## [7] "Hits.Recvd.X1" "Hits.Lnd.X1"
## [9] "Hits.Mssd.X1" "cmTotHitsR.X2"
## [11] "cmTotHitsL.X2" "cmTotHitsM.X2"
## [13] "Hits.Recvd.X2" "Hits.Lnd.X2"
## [15] "Hits.Mssd.X2" "Time"
## [17] "FighterActionReactions.X1" "FightersActionsReactions.X2"
## [19] "Notes" "Crossl.X1"
## [21] "Kneel.X1" "Elbowl.X1"
## [23] "Hookl.X1" "Jabl.X1"
## [25] "Kickl.X1" "Crossl.X2"
## [27] "Kneel.X2" "Elbowl.X2"
## [29] "Hookl.X2" "Jabl.X2"
## [31] "Kickl.X2" "upperl.X1"
## [33] "upperl.X2" "takedownl.X1"
## [35] "takedownl.X2" "hammerl.X1"
## [37] "hammerl.X2" "Cross2l.X1"
## [39] "Knee2l.X1" "Elbow2l.X1"
## [41] "Hook2l.X1" "Jab2l.X1"
## [43] "Kick2l.X1" "Cross2l.X2"
## [45] "Knee2l.X2" "Elbow2l.X2"
## [47] "Hook2l.X2" "Jab2l.X2"
## [49] "Kick2l.X2" "upper2l.X1"
## [51] "upper2l.X2" "takedown2l.X1"
## [53] "takedown2l.X2" "hammer2l.X1"
## [55] "hammer2l.X2" "Cross3l.X1"
## [57] "Knee3l.X1" "Elbow3l.X1"
## [59] "Hook3l.X1" "Jab3l.X1"
## [61] "Kick3l.X1" "Cross3l.X2"
## [63] "Knee3l.X2" "Elbow3l.X2"
## [65] "Hook3l.X2" "Jab3l.X2"
## [67] "Kick3l.X2" "upper3l.X1"
## [69] "upper3l.X2" "takedown3l.X1"
## [71] "takedown3l.X2" "hammer3l.X1"
## [73] "hammer3l.X2" "Crossm.X1"
## [75] "Kneem.X1" "Elbowm.X1"
## [77] "Hookm.X1" "Jabm.X1"
## [79] "Kickm.X1" "Crossm.X2"
## [81] "Kneem.X2" "Elbowm.X2"
## [83] "Hookm.X2" "Jabm.X2"
## [85] "Kickm.X2" "upperm.X1"
## [87] "upperm.X2" "takedownm.X1"
## [89] "takedownm.X2" "hammerm.X1"
## [91] "hammerm.X2" "Cross2m.X1"
## [93] "Knee2m.X1" "Elbow2m.X1"
## [95] "Hook2m.X1" "Jab2m.X1"
## [97] "Kick2m.X1" "Cross2m.X2"
## [99] "Knee2m.X2" "Elbow2m.X2"
## [101] "Hook2m.X2" "Jab2m.X2"
## [103] "Kick2m.X2" "upper2m.X1"
## [105] "upper2m.X2" "takedown2m.X1"
## [107] "takedown2m.X2" "hammer2m.X1"
## [109] "hammer2m.X2" "Cross3m.X1"
## [111] "Knee3m.X1" "Elbow3m.X1"
## [113] "Hook3m.X1" "Jab3m.X1"
## [115] "Kick3m.X1" "Cross3m.X2"
## [117] "Knee3m.X2" "Elbow3m.X2"
## [119] "Hook3m.X2" "Jab3m.X2"
## [121] "Kick3m.X2" "upper3m.X1"
## [123] "upper3m.X2" "takedown3m.X1"
## [125] "takedown3m.X2" "hammer3m.X1"
## [127] "hammer3m.X2" "Crossr.X1"
## [129] "Kneer.X1" "Elbowr.X1"
## [131] "Hookr.X1" "Jabr.X1"
## [133] "Kickr.X1" "Crossr.X2"
## [135] "Kneer.X2" "Elbowr.X2"
## [137] "Hookr.X2" "Jabr.X2"
## [139] "Kickr.X2" "upperr.X1"
## [141] "upperr.X2" "takedownr.X1"
## [143] "takedownr.X2" "hammerr.X1"
## [145] "hammerr.X2" "Cross2r.X1"
## [147] "Knee2r.X1" "Elbow2r.X1"
## [149] "Hook2r.X1" "Jab2r.X1"
## [151] "Kick2r.X1" "Cross2r.X2"
## [153] "Knee2r.X2" "Elbow2r.X2"
## [155] "Hook2r.X2" "Jab2r.X2"
## [157] "Kick2r.X2" "upper2r.X1"
## [159] "upper2r.X2" "takedown2r.X1"
## [161] "takedown2r.X2" "hammer2r.X1"
## [163] "hammer2r.X2" "Cross3r.X1"
## [165] "Knee3r.X1" "Elbow3r.X1"
## [167] "Hook3r.X1" "Jab3r.X1"
## [169] "Kick3r.X1" "Cross3r.X2"
## [171] "Knee3r.X2" "Elbow3r.X2"
## [173] "Hook3r.X2" "Jab3r.X2"
## [175] "Kick3r.X2" "upper3r.X1"
## [177] "upper3r.X2" "takedown3r.X1"
## [179] "takedown3r.X2" "hammer3r.X1"
## [181] "hammer3r.X2"
head(Added,10)
## Round SecondsIntoRound SecondsLastRoundAction cmTotHitsR.X1 cmTotHitsL.X1
## 1 1 NA NA NA NA
## 2 1 NA NA NA NA
## 3 1 NA NA NA NA
## 4 1 NA NA NA NA
## 5 1 NA NA NA NA
## 6 1 NA NA NA NA
## 7 1 NA NA NA NA
## 8 1 NA NA NA NA
## 9 1 NA NA NA NA
## 10 1 NA NA NA NA
## cmTotHitsM.X1 Hits.Recvd.X1 Hits.Lnd.X1 Hits.Mssd.X1 cmTotHitsR.X2
## 1 NA NA NA NA NA
## 2 NA NA NA NA NA
## 3 NA NA NA NA NA
## 4 NA NA NA NA NA
## 5 NA NA NA NA NA
## 6 NA NA NA NA NA
## 7 NA NA NA NA NA
## 8 NA NA NA NA NA
## 9 NA NA NA NA NA
## 10 NA NA NA NA NA
## cmTotHitsL.X2 cmTotHitsM.X2 Hits.Recvd.X2 Hits.Lnd.X2 Hits.Mssd.X2 Time
## 1 NA NA NA NA NA 4:53
## 2 NA NA NA NA NA 4:48
## 3 NA NA NA NA NA 4:47
## 4 NA NA NA NA NA 4:45
## 5 NA NA NA NA NA 4:41
## 6 NA NA NA NA NA 4:40
## 7 NA NA NA NA NA 4:28
## 8 NA NA NA NA NA 4:25
## 9 NA NA NA NA NA 4:19
## 10 NA NA NA NA NA 4:18
## FighterActionReactions.X1
## 1 missed R mt kick to low L leg
## 2 missed L jab
## 3 <NA>
## 4 missed R mt kick to low L leg
## 5 lands L mt kick to L leg
## 6 missed L jab, missed R cross
## 7 lands L mt kick to L leg, missed R cross to face
## 8 <NA>
## 9 holding R leg hold starts
## 10 holding R leg hold continues
## FightersActionsReactions.X2 Notes Crossl.X1
## 1 <NA> Germaine 0
## 2 <NA> Germaine 0
## 3 missed L mt kick to L low leg Germaine 0
## 4 <NA> Germaine 0
## 5 <NA> Germaine 0
## 6 lands L mt kick to L leg Germaine 0
## 7 <NA> Germaine 0
## 8 lands L mt kick to L low leg Germaine 0
## 9 caught in R leg hold and missed L mt kick to body Germaine 0
## 10 caught in R leg hold Germaine 0
## Kneel.X1 Elbowl.X1 Hookl.X1 Jabl.X1 Kickl.X1 Crossl.X2 Kneel.X2 Elbowl.X2
## 1 0 0 0 0 0 0 0 0
## 2 0 0 0 0 0 0 0 0
## 3 0 0 0 0 0 0 0 0
## 4 0 0 0 0 0 0 0 0
## 5 0 0 0 0 1 0 0 0
## 6 0 0 0 0 0 0 0 0
## 7 0 0 0 0 1 0 0 0
## 8 0 0 0 0 0 0 0 0
## 9 0 0 0 0 0 0 0 0
## 10 0 0 0 0 0 0 0 0
## Hookl.X2 Jabl.X2 Kickl.X2 upperl.X1 upperl.X2 takedownl.X1 takedownl.X2
## 1 0 0 0 0 0 0 0
## 2 0 0 0 0 0 0 0
## 3 0 0 0 0 0 0 0
## 4 0 0 0 0 0 0 0
## 5 0 0 0 0 0 0 0
## 6 0 0 1 0 0 0 0
## 7 0 0 0 0 0 0 0
## 8 0 0 1 0 0 0 0
## 9 0 0 0 0 0 0 0
## 10 0 0 0 0 0 0 0
## hammerl.X1 hammerl.X2 Cross2l.X1 Knee2l.X1 Elbow2l.X1 Hook2l.X1 Jab2l.X1
## 1 0 0 0 0 0 0 0
## 2 0 0 0 0 0 0 0
## 3 0 0 0 0 0 0 0
## 4 0 0 0 0 0 0 0
## 5 0 0 0 0 0 0 0
## 6 0 0 0 0 0 0 0
## 7 0 0 0 0 0 0 0
## 8 0 0 0 0 0 0 0
## 9 0 0 0 0 0 0 0
## 10 0 0 0 0 0 0 0
## Kick2l.X1 Cross2l.X2 Knee2l.X2 Elbow2l.X2 Hook2l.X2 Jab2l.X2 Kick2l.X2
## 1 0 0 0 0 0 0 0
## 2 0 0 0 0 0 0 0
## 3 0 0 0 0 0 0 0
## 4 0 0 0 0 0 0 0
## 5 0 0 0 0 0 0 0
## 6 0 0 0 0 0 0 0
## 7 0 0 0 0 0 0 0
## 8 0 0 0 0 0 0 0
## 9 0 0 0 0 0 0 0
## 10 0 0 0 0 0 0 0
## upper2l.X1 upper2l.X2 takedown2l.X1 takedown2l.X2 hammer2l.X1 hammer2l.X2
## 1 0 0 0 0 0 0
## 2 0 0 0 0 0 0
## 3 0 0 0 0 0 0
## 4 0 0 0 0 0 0
## 5 0 0 0 0 0 0
## 6 0 0 0 0 0 0
## 7 0 0 0 0 0 0
## 8 0 0 0 0 0 0
## 9 0 0 0 0 0 0
## 10 0 0 0 0 0 0
## Cross3l.X1 Knee3l.X1 Elbow3l.X1 Hook3l.X1 Jab3l.X1 Kick3l.X1 Cross3l.X2
## 1 0 0 0 0 0 0 0
## 2 0 0 0 0 0 0 0
## 3 0 0 0 0 0 0 0
## 4 0 0 0 0 0 0 0
## 5 0 0 0 0 0 0 0
## 6 0 0 0 0 0 0 0
## 7 0 0 0 0 0 0 0
## 8 0 0 0 0 0 0 0
## 9 0 0 0 0 0 0 0
## 10 0 0 0 0 0 0 0
## Knee3l.X2 Elbow3l.X2 Hook3l.X2 Jab3l.X2 Kick3l.X2 upper3l.X1 upper3l.X2
## 1 0 0 0 0 0 0 0
## 2 0 0 0 0 0 0 0
## 3 0 0 0 0 0 0 0
## 4 0 0 0 0 0 0 0
## 5 0 0 0 0 0 0 0
## 6 0 0 0 0 0 0 0
## 7 0 0 0 0 0 0 0
## 8 0 0 0 0 0 0 0
## 9 0 0 0 0 0 0 0
## 10 0 0 0 0 0 0 0
## takedown3l.X1 takedown3l.X2 hammer3l.X1 hammer3l.X2 Crossm.X1 Kneem.X1
## 1 0 0 0 0 0 0
## 2 0 0 0 0 0 0
## 3 0 0 0 0 0 0
## 4 0 0 0 0 0 0
## 5 0 0 0 0 0 0
## 6 0 0 0 0 0 0
## 7 0 0 0 0 0 0
## 8 0 0 0 0 0 0
## 9 0 0 0 0 0 0
## 10 0 0 0 0 0 0
## Elbowm.X1 Hookm.X1 Jabm.X1 Kickm.X1 Crossm.X2 Kneem.X2 Elbowm.X2 Hookm.X2
## 1 0 0 0 1 0 0 0 0
## 2 0 0 1 0 0 0 0 0
## 3 0 0 0 0 0 0 0 0
## 4 0 0 0 1 0 0 0 0
## 5 0 0 0 0 0 0 0 0
## 6 0 0 1 0 0 0 0 0
## 7 0 0 0 0 0 0 0 0
## 8 0 0 0 0 0 0 0 0
## 9 0 0 0 0 0 0 0 0
## 10 0 0 0 0 0 0 0 0
## Jabm.X2 Kickm.X2 upperm.X1 upperm.X2 takedownm.X1 takedownm.X2 hammerm.X1
## 1 0 0 0 0 0 0 0
## 2 0 0 0 0 0 0 0
## 3 0 1 0 0 0 0 0
## 4 0 0 0 0 0 0 0
## 5 0 0 0 0 0 0 0
## 6 0 0 0 0 0 0 0
## 7 0 0 0 0 0 0 0
## 8 0 0 0 0 0 0 0
## 9 0 1 0 0 0 0 0
## 10 0 0 0 0 0 0 0
## hammerm.X2 Cross2m.X1 Knee2m.X1 Elbow2m.X1 Hook2m.X1 Jab2m.X1 Kick2m.X1
## 1 0 0 0 0 0 0 0
## 2 0 0 0 0 0 0 0
## 3 0 0 0 0 0 0 0
## 4 0 0 0 0 0 0 0
## 5 0 0 0 0 0 0 0
## 6 0 1 0 0 0 0 0
## 7 0 1 0 0 0 0 0
## 8 0 0 0 0 0 0 0
## 9 0 0 0 0 0 0 0
## 10 0 0 0 0 0 0 0
## Cross2m.X2 Knee2m.X2 Elbow2m.X2 Hook2m.X2 Jab2m.X2 Kick2m.X2 upper2m.X1
## 1 0 0 0 0 0 0 0
## 2 0 0 0 0 0 0 0
## 3 0 0 0 0 0 0 0
## 4 0 0 0 0 0 0 0
## 5 0 0 0 0 0 0 0
## 6 0 0 0 0 0 0 0
## 7 0 0 0 0 0 0 0
## 8 0 0 0 0 0 0 0
## 9 0 0 0 0 0 0 0
## 10 0 0 0 0 0 0 0
## upper2m.X2 takedown2m.X1 takedown2m.X2 hammer2m.X1 hammer2m.X2 Cross3m.X1
## 1 0 0 0 0 0 0
## 2 0 0 0 0 0 0
## 3 0 0 0 0 0 0
## 4 0 0 0 0 0 0
## 5 0 0 0 0 0 0
## 6 0 0 0 0 0 0
## 7 0 0 0 0 0 0
## 8 0 0 0 0 0 0
## 9 0 0 0 0 0 0
## 10 0 0 0 0 0 0
## Knee3m.X1 Elbow3m.X1 Hook3m.X1 Jab3m.X1 Kick3m.X1 Cross3m.X2 Knee3m.X2
## 1 0 0 0 0 0 0 0
## 2 0 0 0 0 0 0 0
## 3 0 0 0 0 0 0 0
## 4 0 0 0 0 0 0 0
## 5 0 0 0 0 0 0 0
## 6 0 0 0 0 0 0 0
## 7 0 0 0 0 0 0 0
## 8 0 0 0 0 0 0 0
## 9 0 0 0 0 0 0 0
## 10 0 0 0 0 0 0 0
## Elbow3m.X2 Hook3m.X2 Jab3m.X2 Kick3m.X2 upper3m.X1 upper3m.X2 takedown3m.X1
## 1 0 0 0 0 0 0 0
## 2 0 0 0 0 0 0 0
## 3 0 0 0 0 0 0 0
## 4 0 0 0 0 0 0 0
## 5 0 0 0 0 0 0 0
## 6 0 0 0 0 0 0 0
## 7 0 0 0 0 0 0 0
## 8 0 0 0 0 0 0 0
## 9 0 0 0 0 0 0 0
## 10 0 0 0 0 0 0 0
## takedown3m.X2 hammer3m.X1 hammer3m.X2 Crossr.X1 Kneer.X1 Elbowr.X1 Hookr.X1
## 1 0 0 0 0 0 0 0
## 2 0 0 0 0 0 0 0
## 3 0 0 0 0 0 0 0
## 4 0 0 0 0 0 0 0
## 5 0 0 0 0 0 0 0
## 6 0 0 0 0 0 0 0
## 7 0 0 0 0 0 0 0
## 8 0 0 0 0 0 0 0
## 9 0 0 0 0 0 0 0
## 10 0 0 0 0 0 0 0
## Jabr.X1 Kickr.X1 Crossr.X2 Kneer.X2 Elbowr.X2 Hookr.X2 Jabr.X2 Kickr.X2
## 1 0 0 0 0 0 0 0 0
## 2 0 0 0 0 0 0 0 0
## 3 0 0 0 0 0 0 0 0
## 4 0 0 0 0 0 0 0 0
## 5 0 0 0 0 0 0 0 1
## 6 0 1 0 0 0 0 0 0
## 7 0 0 0 0 0 0 0 1
## 8 0 1 0 0 0 0 0 0
## 9 0 0 0 0 0 0 0 0
## 10 0 0 0 0 0 0 0 0
## upperr.X1 upperr.X2 takedownr.X1 takedownr.X2 hammerr.X1 hammerr.X2
## 1 0 0 0 0 0 0
## 2 0 0 0 0 0 0
## 3 0 0 0 0 0 0
## 4 0 0 0 0 0 0
## 5 0 0 0 0 0 0
## 6 0 0 0 0 0 0
## 7 0 0 0 0 0 0
## 8 0 0 0 0 0 0
## 9 0 0 0 0 0 0
## 10 0 0 0 0 0 0
## Cross2r.X1 Knee2r.X1 Elbow2r.X1 Hook2r.X1 Jab2r.X1 Kick2r.X1 Cross2r.X2
## 1 0 0 0 0 0 0 0
## 2 0 0 0 0 0 0 0
## 3 0 0 0 0 0 0 0
## 4 0 0 0 0 0 0 0
## 5 0 0 0 0 0 0 0
## 6 0 0 0 0 0 0 0
## 7 0 0 0 0 0 0 0
## 8 0 0 0 0 0 0 0
## 9 0 0 0 0 0 0 0
## 10 0 0 0 0 0 0 0
## Knee2r.X2 Elbow2r.X2 Hook2r.X2 Jab2r.X2 Kick2r.X2 upper2r.X1 upper2r.X2
## 1 0 0 0 0 0 0 0
## 2 0 0 0 0 0 0 0
## 3 0 0 0 0 0 0 0
## 4 0 0 0 0 0 0 0
## 5 0 0 0 0 0 0 0
## 6 0 0 0 0 0 0 0
## 7 0 0 0 0 0 0 0
## 8 0 0 0 0 0 0 0
## 9 0 0 0 0 0 0 0
## 10 0 0 0 0 0 0 0
## takedown2r.X1 takedown2r.X2 hammer2r.X1 hammer2r.X2 Cross3r.X1 Knee3r.X1
## 1 0 0 0 0 0 0
## 2 0 0 0 0 0 0
## 3 0 0 0 0 0 0
## 4 0 0 0 0 0 0
## 5 0 0 0 0 0 0
## 6 0 0 0 0 0 0
## 7 0 0 0 0 0 0
## 8 0 0 0 0 0 0
## 9 0 0 0 0 0 0
## 10 0 0 0 0 0 0
## Elbow3r.X1 Hook3r.X1 Jab3r.X1 Kick3r.X1 Cross3r.X2 Knee3r.X2 Elbow3r.X2
## 1 0 0 0 0 0 0 0
## 2 0 0 0 0 0 0 0
## 3 0 0 0 0 0 0 0
## 4 0 0 0 0 0 0 0
## 5 0 0 0 0 0 0 0
## 6 0 0 0 0 0 0 0
## 7 0 0 0 0 0 0 0
## 8 0 0 0 0 0 0 0
## 9 0 0 0 0 0 0 0
## 10 0 0 0 0 0 0 0
## Hook3r.X2 Jab3r.X2 Kick3r.X2 upper3r.X1 upper3r.X2 takedown3r.X1
## 1 0 0 0 0 0 0
## 2 0 0 0 0 0 0
## 3 0 0 0 0 0 0
## 4 0 0 0 0 0 0
## 5 0 0 0 0 0 0
## 6 0 0 0 0 0 0
## 7 0 0 0 0 0 0
## 8 0 0 0 0 0 0
## 9 0 0 0 0 0 0
## 10 0 0 0 0 0 0
## takedown3r.X2 hammer3r.X1 hammer3r.X2
## 1 0 0 0
## 2 0 0 0
## 3 0 0 0
## 4 0 0 0
## 5 0 0 0
## 6 0 0 0
## 7 0 0 0
## 8 0 0 0
## 9 0 0 0
## 10 0 0 0
Removes SecondsIntoRound.
Added2 <- Added[,-2]
Seconds <- mutate(Added2, SecondsIntoRound=300-(as.numeric(Added2$Time)))
seconds <- Seconds[,c(1,181,2:180)]
seconds$lastAction <- as.character(paste(lag(seconds$SecondsIntoRound,1)))
seconds$lastAction <- gsub('NA','0',seconds$lastAction)
seconds$lastAction <- as.numeric(paste(seconds$lastAction))
colnames(seconds)[c(1:5,180:182)]
## [1] "Round" "SecondsIntoRound" "SecondsLastRoundAction"
## [4] "cmTotHitsR.X1" "cmTotHitsL.X1" "hammer3r.X1"
## [7] "hammer3r.X2" "lastAction"
Rearrange the columns and remove the empty SecondsLastRoundAction field.
seconds <- seconds[,c(1:2,182,4:181)]
colnames(seconds)[1:8]
## [1] "Round" "SecondsIntoRound" "lastAction" "cmTotHitsR.X1"
## [5] "cmTotHitsL.X1" "cmTotHitsM.X1" "Hits.Recvd.X1" "Hits.Lnd.X1"
Extension of seconds using mutate() of dplyr library, keeps value of seconds into round as seconds since last action if no action that observation.
last <- mutate(seconds, SecondsLastRoundAction = if_else(seconds$SecondsIntoRound -
seconds$lastAction > 0,
seconds$SecondsIntoRound -
seconds$lastAction,
seconds$SecondsIntoRound))
Reorders so that SecondsLastRoundAction is at front fields location.
last <- last[,c(1:3,182,4:181)]
Rearrange the order of the actions by fighter and landed, missed, and received. Also, add the counts for each accumulated landed actions, missed actions, and received actions per second observed.
landX1 <- colnames(last)[c(21:26,33,35,37,39:44,51,53,55,57:62,69,71,73)]
landX2 <- colnames(last)[c(27:32,34,36,38,45:50,52,54,56,63:68,70,72,74)]
missX1 <- colnames(last)[c(75:80,87,89,91,93:98,105,107,109,111:116,123,125,127)]
missX2 <- colnames(last)[c(81:86,88,90,92,99:104,106,108,110,117:122,124,126,128)]
recvX1 <- colnames(last)[c(129:134,141,143,145,147:152,159,161,163,165:170,177,179,181)]
recvX2 <- colnames(last)[c(135:140,142,144,146,153:158,160,162,164,171:176,178,180,182)]
x1l <- mutate(last, TotLandsX1=last[,21]+last[,22]+last[,23]+last[,24]+last[,25]+
last[,26]+last[,33]+last[,35]+last[,37]+last[,39]+last[,40]+
last[,41]+last[,42]+last[,43]+last[,44]+last[,51]+last[,53]+
last[,55]+last[,57]+last[,58]+last[,59]+last[,60]+last[,61]+
last[,62]+last[,69]+last[,71]+last[,73])
x1m <- mutate(x1l, TotMissedX1=last[,75]+last[,76]+last[,77]+last[,78]+last[,79]+
last[,80]+last[,87]+last[,89]+last[,91]+last[,93]+last[,94]+
last[,95]+last[,96]+last[,97]+last[,98]+last[,105]+last[,107]+
last[,109]+last[,111]+last[,112]+last[,113]+last[,114]+last[,115]+
last[,116]+last[,123]+last[,125]+last[,127])
x1r <- mutate(x1m, TotReceivedX1=last[,129]+last[,130]+last[,131]+last[,132]+last[,133]+
last[,134]+last[,141]+last[,143]+last[,145]+last[,147]+last[,148]+
last[,149]+last[,150]+last[,151]+last[,152]+last[,159]+last[,161]+
last[,163]+last[,165]+last[,166]+last[,167]+last[,168]+last[,169]+
last[,170]+last[,177]+last[,179]+last[,181])
x2l <- mutate(x1r, TotLandsX2=last[,27]+last[,28]+last[,29]+last[,30]+last[,31]+
last[,32]+last[,34]+last[,36]+last[,38]+last[,45]+last[,46]+
last[,47]+last[,48]+last[,49]+last[,50]+last[,52]+last[,54]+
last[,56]+last[,63]+last[,64]+last[,65]+last[,66]+last[,67]+
last[,68]+last[,70]+last[,72]+last[,74])
x2m <- mutate(x2l, TotMissedX2=last[,81]+last[,82]+last[,83]+last[,84]+last[,85]+
last[,86]+last[,88]+last[,90]+last[,92]+last[,99]+last[,100]+
last[,101]+last[,102]+last[,103]+last[,104]+last[,106]+last[,108]+
last[,110]+last[,117]+last[,118]+last[,119]+last[,120]+last[,121]+
last[,122]+last[,124]+last[,126]+last[,128])
x2r <- mutate(x2m, TotReceivedX2=last[,135]+last[,136]+last[,137]+last[,138]+last[,139]+
last[,140]+last[,142]+last[,144]+last[,146]+last[,153]+last[,154]+
last[,155]+last[,156]+last[,157]+last[,158]+last[,160]+last[,162]+
last[,164]+last[,171]+last[,172]+last[,173]+last[,174]+last[,175]+
last[,176]+last[,178]+last[,180]+last[,182])
Added3 <- x2r[,c(1,2,3,4:7,183:185,11:13,186:188,17:182)]
colnames(Added3)
## [1] "Round" "SecondsIntoRound"
## [3] "lastAction" "SecondsLastRoundAction"
## [5] "cmTotHitsR.X1" "cmTotHitsL.X1"
## [7] "cmTotHitsM.X1" "TotLandsX1"
## [9] "TotMissedX1" "TotReceivedX1"
## [11] "cmTotHitsR.X2" "cmTotHitsL.X2"
## [13] "cmTotHitsM.X2" "TotLandsX2"
## [15] "TotMissedX2" "TotReceivedX2"
## [17] "Time" "FighterActionReactions.X1"
## [19] "FightersActionsReactions.X2" "Notes"
## [21] "Crossl.X1" "Kneel.X1"
## [23] "Elbowl.X1" "Hookl.X1"
## [25] "Jabl.X1" "Kickl.X1"
## [27] "Crossl.X2" "Kneel.X2"
## [29] "Elbowl.X2" "Hookl.X2"
## [31] "Jabl.X2" "Kickl.X2"
## [33] "upperl.X1" "upperl.X2"
## [35] "takedownl.X1" "takedownl.X2"
## [37] "hammerl.X1" "hammerl.X2"
## [39] "Cross2l.X1" "Knee2l.X1"
## [41] "Elbow2l.X1" "Hook2l.X1"
## [43] "Jab2l.X1" "Kick2l.X1"
## [45] "Cross2l.X2" "Knee2l.X2"
## [47] "Elbow2l.X2" "Hook2l.X2"
## [49] "Jab2l.X2" "Kick2l.X2"
## [51] "upper2l.X1" "upper2l.X2"
## [53] "takedown2l.X1" "takedown2l.X2"
## [55] "hammer2l.X1" "hammer2l.X2"
## [57] "Cross3l.X1" "Knee3l.X1"
## [59] "Elbow3l.X1" "Hook3l.X1"
## [61] "Jab3l.X1" "Kick3l.X1"
## [63] "Cross3l.X2" "Knee3l.X2"
## [65] "Elbow3l.X2" "Hook3l.X2"
## [67] "Jab3l.X2" "Kick3l.X2"
## [69] "upper3l.X1" "upper3l.X2"
## [71] "takedown3l.X1" "takedown3l.X2"
## [73] "hammer3l.X1" "hammer3l.X2"
## [75] "Crossm.X1" "Kneem.X1"
## [77] "Elbowm.X1" "Hookm.X1"
## [79] "Jabm.X1" "Kickm.X1"
## [81] "Crossm.X2" "Kneem.X2"
## [83] "Elbowm.X2" "Hookm.X2"
## [85] "Jabm.X2" "Kickm.X2"
## [87] "upperm.X1" "upperm.X2"
## [89] "takedownm.X1" "takedownm.X2"
## [91] "hammerm.X1" "hammerm.X2"
## [93] "Cross2m.X1" "Knee2m.X1"
## [95] "Elbow2m.X1" "Hook2m.X1"
## [97] "Jab2m.X1" "Kick2m.X1"
## [99] "Cross2m.X2" "Knee2m.X2"
## [101] "Elbow2m.X2" "Hook2m.X2"
## [103] "Jab2m.X2" "Kick2m.X2"
## [105] "upper2m.X1" "upper2m.X2"
## [107] "takedown2m.X1" "takedown2m.X2"
## [109] "hammer2m.X1" "hammer2m.X2"
## [111] "Cross3m.X1" "Knee3m.X1"
## [113] "Elbow3m.X1" "Hook3m.X1"
## [115] "Jab3m.X1" "Kick3m.X1"
## [117] "Cross3m.X2" "Knee3m.X2"
## [119] "Elbow3m.X2" "Hook3m.X2"
## [121] "Jab3m.X2" "Kick3m.X2"
## [123] "upper3m.X1" "upper3m.X2"
## [125] "takedown3m.X1" "takedown3m.X2"
## [127] "hammer3m.X1" "hammer3m.X2"
## [129] "Crossr.X1" "Kneer.X1"
## [131] "Elbowr.X1" "Hookr.X1"
## [133] "Jabr.X1" "Kickr.X1"
## [135] "Crossr.X2" "Kneer.X2"
## [137] "Elbowr.X2" "Hookr.X2"
## [139] "Jabr.X2" "Kickr.X2"
## [141] "upperr.X1" "upperr.X2"
## [143] "takedownr.X1" "takedownr.X2"
## [145] "hammerr.X1" "hammerr.X2"
## [147] "Cross2r.X1" "Knee2r.X1"
## [149] "Elbow2r.X1" "Hook2r.X1"
## [151] "Jab2r.X1" "Kick2r.X1"
## [153] "Cross2r.X2" "Knee2r.X2"
## [155] "Elbow2r.X2" "Hook2r.X2"
## [157] "Jab2r.X2" "Kick2r.X2"
## [159] "upper2r.X1" "upper2r.X2"
## [161] "takedown2r.X1" "takedown2r.X2"
## [163] "hammer2r.X1" "hammer2r.X2"
## [165] "Cross3r.X1" "Knee3r.X1"
## [167] "Elbow3r.X1" "Hook3r.X1"
## [169] "Jab3r.X1" "Kick3r.X1"
## [171] "Cross3r.X2" "Knee3r.X2"
## [173] "Elbow3r.X2" "Hook3r.X2"
## [175] "Jab3r.X2" "Kick3r.X2"
## [177] "upper3r.X1" "upper3r.X2"
## [179] "takedown3r.X1" "takedown3r.X2"
## [181] "hammer3r.X1" "hammer3r.X2"
Create break points where last action in seconds is greater than the amount of seconds of the round. This is because there are three round 1’s from three fights, where the cut off needs to be in place for the end of a round when counting seconds since last action of that round.
break1 <- Added3$lastAction > Added3$SecondsIntoRound
break1
## [1] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
## [13] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
## [25] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
## [37] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
## [49] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
## [61] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
## [73] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
## [85] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
## [97] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
## [109] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
## [121] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
## [133] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
## [145] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
## [157] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
## [169] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
## [181] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
## [193] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
## [205] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
## [217] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
## [229] FALSE FALSE FALSE TRUE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
## [241] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
## [253] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
## [265] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
## [277] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE TRUE FALSE FALSE FALSE
## [289] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
## [301] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
## [313] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
## [325] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
## [337] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
## [349] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
## [361] FALSE FALSE FALSE TRUE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
## [373] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
## [385] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
break2 <- row.names(Added3[break1,])
break2
## [1] "232" "285" "364"
bk2 <- as.numeric(break2)
bk2
## [1] 232 285 364
split1 <- bk2[1]
split1
## [1] 232
split2 <- bk2[2]
split2
## [1] 285
split3 <- bk2[3]
split3
## [1] 364
First opponent:
Table1 <- Added3[1:(split1-1),]
Table1
## Round SecondsIntoRound lastAction SecondsLastRoundAction cmTotHitsR.X1
## 1 1 6 0 6 NA
## 2 1 11 6 5 NA
## 3 1 12 11 1 NA
## 4 1 14 12 2 NA
## 5 1 18 14 4 NA
## 6 1 19 18 1 NA
## 7 1 31 19 12 NA
## 8 1 34 31 3 NA
## 9 1 40 34 6 NA
## 10 1 41 40 1 NA
## 11 1 42 41 1 NA
## 12 1 43 42 1 NA
## 13 1 44 43 1 NA
## 14 1 47 44 3 NA
## 15 1 51 47 4 NA
## 16 1 71 51 20 NA
## 17 1 73 71 2 NA
## 18 1 74 73 1 NA
## 19 1 75 74 1 NA
## 20 1 76 75 1 NA
## 21 1 77 76 1 NA
## 22 1 78 77 1 NA
## 23 1 79 78 1 NA
## 24 1 80 79 1 NA
## 25 1 81 80 1 NA
## 26 1 82 81 1 NA
## 27 1 83 82 1 NA
## 28 1 84 83 1 NA
## 29 1 85 84 1 NA
## 30 1 86 85 1 NA
## 31 1 87 86 1 NA
## 32 1 88 87 1 NA
## 33 1 89 88 1 NA
## 34 1 90 89 1 NA
## 35 1 91 90 1 NA
## 36 1 92 91 1 NA
## 37 1 93 92 1 NA
## 38 1 94 93 1 NA
## 39 1 96 94 2 NA
## 40 1 97 96 1 NA
## 41 1 98 97 1 NA
## 42 1 99 98 1 NA
## 43 1 100 99 1 NA
## 44 1 101 100 1 NA
## 45 1 102 101 1 NA
## 46 1 103 102 1 NA
## 47 1 104 103 1 NA
## 48 1 105 104 1 NA
## 49 1 106 105 1 NA
## 50 1 107 106 1 NA
## 51 1 109 107 2 NA
## 52 1 111 109 2 NA
## 53 1 112 111 1 NA
## 54 1 113 112 1 NA
## 55 1 114 113 1 NA
## 56 1 115 114 1 NA
## 57 1 116 115 1 NA
## 58 1 117 116 1 NA
## 59 1 118 117 1 NA
## 60 1 119 118 1 NA
## 61 1 120 119 1 NA
## 62 1 121 120 1 NA
## 63 1 122 121 1 NA
## 64 1 123 122 1 NA
## 65 1 124 123 1 NA
## 66 1 125 124 1 NA
## 67 1 126 125 1 NA
## 68 1 127 126 1 NA
## 69 1 128 127 1 NA
## 70 1 129 128 1 NA
## 71 1 130 129 1 NA
## 72 1 131 130 1 NA
## 73 1 132 131 1 NA
## 74 1 133 132 1 NA
## 75 1 134 133 1 NA
## 76 1 135 134 1 NA
## 77 1 136 135 1 NA
## 78 1 137 136 1 NA
## 79 1 138 137 1 NA
## 80 1 139 138 1 NA
## 81 1 140 139 1 NA
## 82 1 141 140 1 NA
## 83 1 142 141 1 NA
## 84 1 144 142 2 NA
## 85 1 146 144 2 NA
## 86 1 149 146 3 NA
## 87 1 150 149 1 NA
## 88 1 151 150 1 NA
## 89 1 152 151 1 NA
## 90 1 153 152 1 NA
## 91 1 154 153 1 NA
## 92 1 155 154 1 NA
## 93 1 156 155 1 NA
## 94 1 157 156 1 NA
## 95 1 158 157 1 NA
## 96 1 159 158 1 NA
## 97 1 160 159 1 NA
## 98 1 161 160 1 NA
## 99 1 162 161 1 NA
## 100 1 163 162 1 NA
## 101 1 164 163 1 NA
## 102 1 165 164 1 NA
## 103 1 166 165 1 NA
## 104 1 167 166 1 NA
## 105 1 168 167 1 NA
## 106 1 169 168 1 NA
## 107 1 170 169 1 NA
## 108 1 171 170 1 NA
## 109 1 172 171 1 NA
## 110 1 173 172 1 NA
## 111 1 174 173 1 NA
## 112 1 175 174 1 NA
## 113 1 176 175 1 NA
## 114 1 177 176 1 NA
## 115 1 178 177 1 NA
## 116 1 179 178 1 NA
## 117 1 180 179 1 NA
## 118 1 181 180 1 NA
## 119 1 182 181 1 NA
## 120 1 183 182 1 NA
## 121 1 184 183 1 NA
## 122 1 185 184 1 NA
## 123 1 186 185 1 NA
## 124 1 187 186 1 NA
## 125 1 188 187 1 NA
## 126 1 189 188 1 NA
## 127 1 190 189 1 NA
## 128 1 191 190 1 NA
## 129 1 192 191 1 NA
## 130 1 193 192 1 NA
## 131 1 194 193 1 NA
## 132 1 195 194 1 NA
## 133 1 196 195 1 NA
## 134 1 197 196 1 NA
## 135 1 198 197 1 NA
## 136 1 199 198 1 NA
## 137 1 200 199 1 NA
## 138 1 201 200 1 NA
## 139 1 202 201 1 NA
## 140 1 203 202 1 NA
## 141 1 204 203 1 NA
## 142 1 205 204 1 NA
## 143 1 206 205 1 NA
## 144 1 207 206 1 NA
## 145 1 208 207 1 NA
## 146 1 209 208 1 NA
## 147 1 210 209 1 NA
## 148 1 211 210 1 NA
## 149 1 212 211 1 NA
## 150 1 213 212 1 NA
## 151 1 214 213 1 NA
## 152 1 215 214 1 NA
## 153 1 216 215 1 NA
## 154 1 217 216 1 NA
## 155 1 218 217 1 NA
## 156 1 219 218 1 NA
## 157 1 220 219 1 NA
## 158 1 221 220 1 NA
## 159 1 222 221 1 NA
## 160 1 223 222 1 NA
## 161 1 224 223 1 NA
## 162 1 225 224 1 NA
## 163 1 226 225 1 NA
## 164 1 227 226 1 NA
## 165 1 228 227 1 NA
## 166 1 229 228 1 NA
## 167 1 230 229 1 NA
## 168 1 231 230 1 NA
## 169 1 232 231 1 NA
## 170 1 233 232 1 NA
## 171 1 234 233 1 NA
## 172 1 235 234 1 NA
## 173 1 236 235 1 NA
## 174 1 237 236 1 NA
## 175 1 238 237 1 NA
## 176 1 239 238 1 NA
## 177 1 240 239 1 NA
## 178 1 241 240 1 NA
## 179 1 242 241 1 NA
## 180 1 243 242 1 NA
## 181 1 244 243 1 NA
## 182 1 245 244 1 NA
## 183 1 246 245 1 NA
## 184 1 247 246 1 NA
## 185 1 248 247 1 NA
## 186 1 249 248 1 NA
## 187 1 250 249 1 NA
## 188 1 251 250 1 NA
## 189 1 252 251 1 NA
## 190 1 253 252 1 NA
## 191 1 254 253 1 NA
## 192 1 255 254 1 NA
## 193 1 256 255 1 NA
## 194 1 257 256 1 NA
## 195 1 258 257 1 NA
## 196 1 259 258 1 NA
## 197 1 260 259 1 NA
## 198 1 261 260 1 NA
## 199 1 262 261 1 NA
## 200 1 263 262 1 NA
## 201 1 264 263 1 NA
## 202 1 265 264 1 NA
## 203 1 266 265 1 NA
## 204 1 267 266 1 NA
## 205 1 268 267 1 NA
## 206 1 269 268 1 NA
## 207 1 270 269 1 NA
## 208 1 271 270 1 NA
## 209 1 272 271 1 NA
## 210 1 273 272 1 NA
## 211 1 274 273 1 NA
## 212 1 275 274 1 NA
## 213 1 276 275 1 NA
## 214 1 277 276 1 NA
## 215 1 283 277 6 NA
## 216 1 284 283 1 NA
## 217 1 285 284 1 NA
## 218 1 286 285 1 NA
## 219 1 287 286 1 NA
## 220 1 288 287 1 NA
## 221 1 289 288 1 NA
## 222 1 290 289 1 NA
## 223 1 291 290 1 NA
## 224 1 292 291 1 NA
## 225 1 293 292 1 NA
## 226 1 294 293 1 NA
## 227 1 295 294 1 NA
## 228 1 296 295 1 NA
## 229 1 297 296 1 NA
## 230 1 298 297 1 NA
## 231 1 299 298 1 NA
## cmTotHitsL.X1 cmTotHitsM.X1 TotLandsX1 TotMissedX1 TotReceivedX1
## 1 NA NA 0 1 0
## 2 NA NA 0 1 0
## 3 NA NA 0 0 0
## 4 NA NA 0 1 0
## 5 NA NA 1 0 0
## 6 NA NA 0 2 1
## 7 NA NA 1 1 0
## 8 NA NA 0 0 1
## 9 NA NA 0 0 0
## 10 NA NA 0 0 0
## 11 NA NA 0 0 0
## 12 NA NA 0 1 0
## 13 NA NA 0 0 0
## 14 NA NA 1 0 0
## 15 NA NA 0 0 0
## 16 NA NA 0 2 0
## 17 NA NA 0 2 0
## 18 NA NA 0 1 0
## 19 NA NA 0 0 0
## 20 NA NA 1 0 0
## 21 NA NA 0 0 0
## 22 NA NA 0 0 0
## 23 NA NA 0 0 0
## 24 NA NA 0 0 0
## 25 NA NA 0 0 0
## 26 NA NA 0 0 0
## 27 NA NA 0 0 0
## 28 NA NA 0 0 0
## 29 NA NA 0 0 0
## 30 NA NA 0 0 0
## 31 NA NA 0 0 0
## 32 NA NA 0 2 0
## 33 NA NA 2 0 0
## 34 NA NA 1 0 0
## 35 NA NA 0 0 0
## 36 NA NA 0 0 0
## 37 NA NA 1 0 0
## 38 NA NA 0 0 0
## 39 NA NA 0 0 0
## 40 NA NA 0 0 0
## 41 NA NA 0 0 0
## 42 NA NA 0 0 0
## 43 NA NA 0 0 0
## 44 NA NA 0 0 0
## 45 NA NA 0 0 0
## 46 NA NA 0 0 0
## 47 NA NA 0 0 0
## 48 NA NA 0 0 0
## 49 NA NA 0 0 0
## 50 NA NA 0 0 0
## 51 NA NA 0 0 0
## 52 NA NA 0 0 1
## 53 NA NA 0 0 0
## 54 NA NA 0 0 0
## 55 NA NA 0 0 0
## 56 NA NA 0 0 0
## 57 NA NA 0 0 0
## 58 NA NA 0 0 2
## 59 NA NA 0 0 2
## 60 NA NA 0 0 0
## 61 NA NA 0 0 2
## 62 NA NA 0 0 0
## 63 NA NA 0 0 2
## 64 NA NA 0 0 0
## 65 NA NA 0 0 0
## 66 NA NA 0 0 2
## 67 NA NA 0 0 0
## 68 NA NA 0 0 0
## 69 NA NA 0 0 0
## 70 NA NA 0 0 0
## 71 NA NA 0 0 0
## 72 NA NA 0 0 0
## 73 NA NA 0 0 0
## 74 NA NA 0 0 0
## 75 NA NA 0 0 0
## 76 NA NA 0 0 0
## 77 NA NA 0 0 0
## 78 NA NA 0 0 0
## 79 NA NA 0 0 0
## 80 NA NA 0 0 0
## 81 NA NA 0 0 0
## 82 NA NA 0 0 0
## 83 NA NA 1 0 0
## 84 NA NA 1 0 0
## 85 NA NA 0 0 0
## 86 NA NA 3 0 0
## 87 NA NA 1 0 0
## 88 NA NA 1 0 0
## 89 NA NA 0 0 0
## 90 NA NA 0 0 0
## 91 NA NA 0 0 0
## 92 NA NA 1 0 0
## 93 NA NA 2 0 0
## 94 NA NA 0 0 0
## 95 NA NA 0 0 0
## 96 NA NA 0 0 0
## 97 NA NA 0 0 0
## 98 NA NA 0 0 0
## 99 NA NA 0 0 0
## 100 NA NA 0 0 0
## 101 NA NA 0 0 0
## 102 NA NA 0 0 0
## 103 NA NA 1 0 0
## 104 NA NA 1 0 0
## 105 NA NA 0 0 0
## 106 NA NA 0 0 0
## 107 NA NA 0 0 0
## 108 NA NA 0 0 0
## 109 NA NA 0 0 0
## 110 NA NA 0 0 0
## 111 NA NA 0 0 0
## 112 NA NA 0 0 0
## 113 NA NA 0 0 0
## 114 NA NA 0 0 0
## 115 NA NA 0 0 0
## 116 NA NA 0 0 0
## 117 NA NA 0 0 0
## 118 NA NA 0 0 0
## 119 NA NA 0 0 0
## 120 NA NA 0 0 0
## 121 NA NA 0 0 0
## 122 NA NA 0 0 0
## 123 NA NA 0 0 0
## 124 NA NA 1 0 0
## 125 NA NA 0 0 0
## 126 NA NA 0 0 0
## 127 NA NA 0 0 0
## 128 NA NA 0 0 0
## 129 NA NA 0 0 0
## 130 NA NA 0 0 0
## 131 NA NA 0 0 0
## 132 NA NA 1 0 0
## 133 NA NA 0 0 0
## 134 NA NA 1 0 0
## 135 NA NA 0 0 0
## 136 NA NA 0 0 0
## 137 NA NA 1 1 0
## 138 NA NA 0 0 0
## 139 NA NA 0 0 0
## 140 NA NA 0 0 0
## 141 NA NA 0 0 0
## 142 NA NA 0 0 0
## 143 NA NA 0 0 0
## 144 NA NA 0 0 0
## 145 NA NA 0 0 0
## 146 NA NA 0 0 0
## 147 NA NA 0 0 0
## 148 NA NA 0 0 0
## 149 NA NA 0 0 0
## 150 NA NA 1 0 0
## 151 NA NA 1 0 0
## 152 NA NA 2 0 0
## 153 NA NA 2 0 0
## 154 NA NA 0 2 0
## 155 NA NA 2 0 0
## 156 NA NA 1 0 0
## 157 NA NA 0 1 0
## 158 NA NA 0 0 0
## 159 NA NA 0 0 0
## 160 NA NA 2 0 0
## 161 NA NA 1 2 0
## 162 NA NA 1 0 0
## 163 NA NA 2 0 0
## 164 NA NA 1 0 0
## 165 NA NA 1 0 0
## 166 NA NA 1 1 0
## 167 NA NA 2 0 0
## 168 NA NA 0 2 0
## 169 NA NA 0 3 0
## 170 NA NA 0 0 0
## 171 NA NA 0 0 0
## 172 NA NA 0 0 0
## 173 NA NA 0 0 0
## 174 NA NA 1 0 0
## 175 NA NA 2 0 0
## 176 NA NA 0 0 0
## 177 NA NA 0 0 0
## 178 NA NA 0 0 0
## 179 NA NA 0 0 0
## 180 NA NA 0 0 0
## 181 NA NA 0 0 0
## 182 NA NA 0 0 0
## 183 NA NA 0 0 0
## 184 NA NA 0 0 0
## 185 NA NA 0 0 0
## 186 NA NA 0 0 0
## 187 NA NA 0 0 0
## 188 NA NA 0 0 0
## 189 NA NA 0 0 0
## 190 NA NA 0 0 0
## 191 NA NA 0 0 0
## 192 NA NA 0 0 0
## 193 NA NA 0 0 0
## 194 NA NA 0 0 0
## 195 NA NA 0 0 0
## 196 NA NA 0 0 0
## 197 NA NA 0 0 0
## 198 NA NA 0 0 0
## 199 NA NA 0 0 0
## 200 NA NA 0 0 0
## 201 NA NA 0 0 0
## 202 NA NA 0 0 0
## 203 NA NA 0 0 0
## 204 NA NA 0 0 0
## 205 NA NA 0 0 0
## 206 NA NA 0 0 0
## 207 NA NA 0 0 0
## 208 NA NA 0 2 0
## 209 NA NA 0 0 0
## 210 NA NA 0 0 0
## 211 NA NA 1 0 0
## 212 NA NA 0 1 0
## 213 NA NA 0 0 0
## 214 NA NA 0 1 0
## 215 NA NA 0 0 0
## 216 NA NA 0 0 0
## 217 NA NA 0 0 0
## 218 NA NA 0 0 0
## 219 NA NA 0 1 0
## 220 NA NA 0 0 0
## 221 NA NA 0 0 0
## 222 NA NA 0 0 0
## 223 NA NA 0 0 0
## 224 NA NA 0 0 0
## 225 NA NA 0 0 0
## 226 NA NA 0 0 0
## 227 NA NA 0 0 0
## 228 NA NA 0 0 0
## 229 NA NA 0 0 0
## 230 NA NA 0 0 0
## 231 NA NA 0 0 0
## cmTotHitsR.X2 cmTotHitsL.X2 cmTotHitsM.X2 TotLandsX2 TotMissedX2
## 1 NA NA NA 0 0
## 2 NA NA NA 0 0
## 3 NA NA NA 0 1
## 4 NA NA NA 0 0
## 5 NA NA NA 0 0
## 6 NA NA NA 1 0
## 7 NA NA NA 0 0
## 8 NA NA NA 1 0
## 9 NA NA NA 0 1
## 10 NA NA NA 0 0
## 11 NA NA NA 0 0
## 12 NA NA NA 0 0
## 13 NA NA NA 0 0
## 14 NA NA NA 0 1
## 15 NA NA NA 0 1
## 16 NA NA NA 0 0
## 17 NA NA NA 0 0
## 18 NA NA NA 0 0
## 19 NA NA NA 0 1
## 20 NA NA NA 0 0
## 21 NA NA NA 0 0
## 22 NA NA NA 0 0
## 23 NA NA NA 0 0
## 24 NA NA NA 0 0
## 25 NA NA NA 0 0
## 26 NA NA NA 0 0
## 27 NA NA NA 0 0
## 28 NA NA NA 0 0
## 29 NA NA NA 0 0
## 30 NA NA NA 0 0
## 31 NA NA NA 0 0
## 32 NA NA NA 0 0
## 33 NA NA NA 0 0
## 34 NA NA NA 0 1
## 35 NA NA NA 0 0
## 36 NA NA NA 0 1
## 37 NA NA NA 0 0
## 38 NA NA NA 0 0
## 39 NA NA NA 0 0
## 40 NA NA NA 0 0
## 41 NA NA NA 0 0
## 42 NA NA NA 0 0
## 43 NA NA NA 0 0
## 44 NA NA NA 0 0
## 45 NA NA NA 0 0
## 46 NA NA NA 0 0
## 47 NA NA NA 0 0
## 48 NA NA NA 0 0
## 49 NA NA NA 0 0
## 50 NA NA NA 0 0
## 51 NA NA NA 0 0
## 52 NA NA NA 1 0
## 53 NA NA NA 0 0
## 54 NA NA NA 0 0
## 55 NA NA NA 0 0
## 56 NA NA NA 0 0
## 57 NA NA NA 0 0
## 58 NA NA NA 2 0
## 59 NA NA NA 2 0
## 60 NA NA NA 0 0
## 61 NA NA NA 2 0
## 62 NA NA NA 0 0
## 63 NA NA NA 2 0
## 64 NA NA NA 0 0
## 65 NA NA NA 0 0
## 66 NA NA NA 2 0
## 67 NA NA NA 0 0
## 68 NA NA NA 0 0
## 69 NA NA NA 0 0
## 70 NA NA NA 0 0
## 71 NA NA NA 0 0
## 72 NA NA NA 0 0
## 73 NA NA NA 0 0
## 74 NA NA NA 0 2
## 75 NA NA NA 0 0
## 76 NA NA NA 0 0
## 77 NA NA NA 0 2
## 78 NA NA NA 0 0
## 79 NA NA NA 0 0
## 80 NA NA NA 0 0
## 81 NA NA NA 0 0
## 82 NA NA NA 0 0
## 83 NA NA NA 0 0
## 84 NA NA NA 0 0
## 85 NA NA NA 0 0
## 86 NA NA NA 0 0
## 87 NA NA NA 0 0
## 88 NA NA NA 0 0
## 89 NA NA NA 0 0
## 90 NA NA NA 0 0
## 91 NA NA NA 0 0
## 92 NA NA NA 0 0
## 93 NA NA NA 0 0
## 94 NA NA NA 0 0
## 95 NA NA NA 0 0
## 96 NA NA NA 0 0
## 97 NA NA NA 0 0
## 98 NA NA NA 0 0
## 99 NA NA NA 0 0
## 100 NA NA NA 0 0
## 101 NA NA NA 0 1
## 102 NA NA NA 0 0
## 103 NA NA NA 0 0
## 104 NA NA NA 0 0
## 105 NA NA NA 0 0
## 106 NA NA NA 0 0
## 107 NA NA NA 0 0
## 108 NA NA NA 0 0
## 109 NA NA NA 0 0
## 110 NA NA NA 0 0
## 111 NA NA NA 0 0
## 112 NA NA NA 0 0
## 113 NA NA NA 0 0
## 114 NA NA NA 0 0
## 115 NA NA NA 0 0
## 116 NA NA NA 0 0
## 117 NA NA NA 0 0
## 118 NA NA NA 0 0
## 119 NA NA NA 0 0
## 120 NA NA NA 0 0
## 121 NA NA NA 0 0
## 122 NA NA NA 0 0
## 123 NA NA NA 0 0
## 124 NA NA NA 0 0
## 125 NA NA NA 0 0
## 126 NA NA NA 0 0
## 127 NA NA NA 0 0
## 128 NA NA NA 0 0
## 129 NA NA NA 0 0
## 130 NA NA NA 0 0
## 131 NA NA NA 0 0
## 132 NA NA NA 0 0
## 133 NA NA NA 0 0
## 134 NA NA NA 0 0
## 135 NA NA NA 0 0
## 136 NA NA NA 0 0
## 137 NA NA NA 0 0
## 138 NA NA NA 0 1
## 139 NA NA NA 0 0
## 140 NA NA NA 0 0
## 141 NA NA NA 0 0
## 142 NA NA NA 0 0
## 143 NA NA NA 0 0
## 144 NA NA NA 0 0
## 145 NA NA NA 0 0
## 146 NA NA NA 0 0
## 147 NA NA NA 0 0
## 148 NA NA NA 0 0
## 149 NA NA NA 0 0
## 150 NA NA NA 0 0
## 151 NA NA NA 0 0
## 152 NA NA NA 0 0
## 153 NA NA NA 0 0
## 154 NA NA NA 0 0
## 155 NA NA NA 0 0
## 156 NA NA NA 0 0
## 157 NA NA NA 0 0
## 158 NA NA NA 0 0
## 159 NA NA NA 0 0
## 160 NA NA NA 0 0
## 161 NA NA NA 0 0
## 162 NA NA NA 0 0
## 163 NA NA NA 0 0
## 164 NA NA NA 0 0
## 165 NA NA NA 0 0
## 166 NA NA NA 0 0
## 167 NA NA NA 0 0
## 168 NA NA NA 0 0
## 169 NA NA NA 0 0
## 170 NA NA NA 0 0
## 171 NA NA NA 0 0
## 172 NA NA NA 0 0
## 173 NA NA NA 0 0
## 174 NA NA NA 0 0
## 175 NA NA NA 0 0
## 176 NA NA NA 0 0
## 177 NA NA NA 0 0
## 178 NA NA NA 0 0
## 179 NA NA NA 0 0
## 180 NA NA NA 0 0
## 181 NA NA NA 0 0
## 182 NA NA NA 0 0
## 183 NA NA NA 0 0
## 184 NA NA NA 0 0
## 185 NA NA NA 0 0
## 186 NA NA NA 0 0
## 187 NA NA NA 0 0
## 188 NA NA NA 0 0
## 189 NA NA NA 0 0
## 190 NA NA NA 0 0
## 191 NA NA NA 0 0
## 192 NA NA NA 0 0
## 193 NA NA NA 0 0
## 194 NA NA NA 0 0
## 195 NA NA NA 0 0
## 196 NA NA NA 0 0
## 197 NA NA NA 0 0
## 198 NA NA NA 0 0
## 199 NA NA NA 0 0
## 200 NA NA NA 0 0
## 201 NA NA NA 0 0
## 202 NA NA NA 0 0
## 203 NA NA NA 0 0
## 204 NA NA NA 0 0
## 205 NA NA NA 0 0
## 206 NA NA NA 0 0
## 207 NA NA NA 0 0
## 208 NA NA NA 0 0
## 209 NA NA NA 0 0
## 210 NA NA NA 0 0
## 211 NA NA NA 0 0
## 212 NA NA NA 0 0
## 213 NA NA NA 0 1
## 214 NA NA NA 0 0
## 215 NA NA NA 0 1
## 216 NA NA NA 0 0
## 217 NA NA NA 0 0
## 218 NA NA NA 0 0
## 219 NA NA NA 0 0
## 220 NA NA NA 0 0
## 221 NA NA NA 0 0
## 222 NA NA NA 0 0
## 223 NA NA NA 0 0
## 224 NA NA NA 0 0
## 225 NA NA NA 0 0
## 226 NA NA NA 0 0
## 227 NA NA NA 0 0
## 228 NA NA NA 0 0
## 229 NA NA NA 0 0
## 230 NA NA NA 0 0
## 231 NA NA NA 0 0
## TotReceivedX2 Time
## 1 0 4:53
## 2 0 4:48
## 3 0 4:47
## 4 0 4:45
## 5 1 4:41
## 6 0 4:40
## 7 1 4:28
## 8 0 4:25
## 9 0 4:19
## 10 0 4:18
## 11 0 4:17
## 12 0 4:16
## 13 0 4:15
## 14 1 4:12
## 15 0 4:08
## 16 0 3:48
## 17 0 3:46
## 18 0 3:45
## 19 0 3:44
## 20 1 3:43
## 21 0 3:42
## 22 0 3:41
## 23 0 3:40
## 24 0 3:39
## 25 0 3:38
## 26 0 3:37
## 27 0 3:36
## 28 0 3:35
## 29 0 3:34
## 30 0 3:33
## 31 0 3:32
## 32 0 3:31
## 33 2 3:30
## 34 1 3:29
## 35 0 3:28
## 36 0 3:27
## 37 1 3:26
## 38 0 3:25
## 39 0 3:23
## 40 0 3:22
## 41 0 3:21
## 42 0 3:20
## 43 0 3:19
## 44 0 3:18
## 45 0 3:17
## 46 0 3:16
## 47 0 3:15
## 48 0 3:14
## 49 0 3:13
## 50 0 3:12
## 51 0 3:10
## 52 0 3:08
## 53 0 3:07
## 54 0 3:06
## 55 0 3:05
## 56 0 3:04
## 57 0 3:03
## 58 0 3:02
## 59 0 3:01
## 60 0 3:00
## 61 0 2:59
## 62 0 2:58
## 63 0 2:57
## 64 0 2:56
## 65 0 2:55
## 66 0 2:54
## 67 0 2:53
## 68 0 2:52
## 69 0 2:51
## 70 0 2:50
## 71 0 2:49
## 72 0 2:48
## 73 0 2:47
## 74 0 2:46
## 75 0 2:45
## 76 0 2:44
## 77 0 2:43
## 78 0 2:42
## 79 0 2:41
## 80 0 2:40
## 81 0 2:39
## 82 0 2:38
## 83 1 2:37
## 84 1 2:35
## 85 0 2:33
## 86 3 2:30
## 87 1 2:29
## 88 1 2:28
## 89 0 2:27
## 90 0 2:26
## 91 0 2:25
## 92 1 2:24
## 93 2 2:23
## 94 0 2:22
## 95 0 2:21
## 96 0 2:20
## 97 0 2:19
## 98 0 2:18
## 99 0 2:17
## 100 0 2:16
## 101 0 2:15
## 102 0 2:14
## 103 1 2:13
## 104 1 2:12
## 105 0 2:11
## 106 0 2:10
## 107 0 2:09
## 108 0 2:08
## 109 0 2:07
## 110 0 2:06
## 111 0 2:05
## 112 0 2:04
## 113 0 2:03
## 114 0 2:02
## 115 0 2:01
## 116 0 2:00
## 117 0 1:59
## 118 0 1:58
## 119 0 1:57
## 120 0 1:56
## 121 0 1:55
## 122 0 1:54
## 123 0 1:53
## 124 1 1:52
## 125 0 1:51
## 126 0 1:50
## 127 0 1:49
## 128 0 1:48
## 129 0 1:47
## 130 0 1:46
## 131 0 1:45
## 132 1 1:44
## 133 0 1:43
## 134 1 1:42
## 135 0 1:41
## 136 0 1:40
## 137 1 1:39
## 138 0 1:38
## 139 0 1:37
## 140 0 1:36
## 141 0 1:35
## 142 0 1:34
## 143 0 1:33
## 144 0 1:32
## 145 0 1:31
## 146 0 1:30
## 147 0 1:29
## 148 0 1:28
## 149 0 1:27
## 150 1 1:26
## 151 1 1:25
## 152 2 1:24
## 153 2 1:23
## 154 0 1:22
## 155 2 1:21
## 156 1 1:20
## 157 0 1:19
## 158 0 1:18
## 159 0 1:17
## 160 2 1:16
## 161 1 1:15
## 162 1 1:14
## 163 2 1:13
## 164 1 1:12
## 165 1 1:11
## 166 1 1:10
## 167 2 1:09
## 168 0 1:08
## 169 0 1:07
## 170 0 1:06
## 171 0 1:05
## 172 0 1:04
## 173 0 1:03
## 174 1 1:02
## 175 2 1:01
## 176 0 1:00
## 177 0 0:59
## 178 0 0:58
## 179 0 0:57
## 180 0 0:56
## 181 0 0:55
## 182 0 0:54
## 183 0 0:53
## 184 0 0:52
## 185 0 0:51
## 186 0 0:50
## 187 0 0:49
## 188 0 0:48
## 189 0 0:47
## 190 0 0:46
## 191 0 0:45
## 192 0 0:44
## 193 0 0:43
## 194 0 0:42
## 195 0 0:41
## 196 0 0:40
## 197 0 0:39
## 198 0 0:38
## 199 0 0:37
## 200 0 0:36
## 201 0 0:35
## 202 0 0:34
## 203 0 0:33
## 204 0 0:32
## 205 0 0:31
## 206 0 0:30
## 207 0 0:29
## 208 0 0:28
## 209 0 0:27
## 210 0 0:26
## 211 1 0:25
## 212 0 0:24
## 213 0 0:23
## 214 0 0:22
## 215 0 0:16
## 216 0 0:15
## 217 0 0:14
## 218 0 0:13
## 219 0 0:12
## 220 0 0:11
## 221 0 0:10
## 222 0 0:09
## 223 0 0:08
## 224 0 0:07
## 225 0 0:06
## 226 0 0:05
## 227 0 0:04
## 228 0 0:03
## 229 0 0:02
## 230 0 0:01
## 231 0 0:00
## FighterActionReactions.X1
## 1 missed R mt kick to low L leg
## 2 missed L jab
## 3 <NA>
## 4 missed R mt kick to low L leg
## 5 lands L mt kick to L leg
## 6 missed L jab, missed R cross
## 7 lands L mt kick to L leg, missed R cross to face
## 8 <NA>
## 9 holding R leg hold starts
## 10 holding R leg hold continues
## 11 holding R leg hold continues
## 12 holding R leg hold continues misses R cross to face
## 13 loses R leg hold
## 14 lands R mt kick to L low leg
## 15 <NA>
## 16 misses L jab to face, misses R cross to face
## 17 misses L jab to face, misses R cross to face
## 18 misses L jab to face
## 19 attempts body waste takedown
## 20 lands takedown
## 21 caught in full guard hold
## 22 caught in full guard hold
## 23 caught in full guard hold
## 24 caught in full guard hold
## 25 caught in full guard hold
## 26 caught in full guard hold and puts weight on L shoulder collarbone acromian process while lifting off L leg to break full guard
## 27 caught in full guard hold
## 28 caught in full guard hold and twisting with R armpit and R leg anchoring into L locked thigh at the inside knee
## 29 caught in full guard hold and grabbing at L ear with R hand while twisting and lifting out of full guard lock, gains L arm back, breaks full guard lock at ankles
## 30 breaks full guard hold and standing up while keeping L shin of opponent at chest and bent
## 31 holding L knee hold starts of opponent while standing up and maneuvering around L side of opponent pushing forward to knock off balance a possible up kick of opponent
## 32 caught in open guard hold continues and misses downward R hook to head while pushing and twisting L and holding L knee hold continues
## 33 caught in open guard hold continues and lands downward R cross to head while pushing opponent's leg toward her and turning L and loses L knee hold
## 34 caught in open guard hold continues and lands L downward cross to face while getting out of open guard completely
## 35 caught in open guard hold continues
## 36 caught in open guard hold continues and holding R foot while opponent in open guard
## 37 caught in open guard hold contnues and moves open guard feet to her R while landing R downward cross to face
## 38 breaks open guard hold and falls on ground to the side of opponent
## 39 getting up while attempting a head R arm guillotine of opponent as holding guillotine hold starts
## 40 locks guillotine around R armpit and neck of opponent while standing full guard lock and holding guillotine hold continues
## 41 holding guillotine hold continues
## 42 holding guillotine hold continues
## 43 takedown of opponent in full guard while holding of guillotine hold continues
## 44 holding guillotine hold continues
## 45 holding full guard hold starts and holding guillotine hold continues
## 46 holding guillotine hold continues
## 47 holding guillotine hold continues
## 48 holding guillotine hold continues
## 49 loses guillotine hold and loses full guard hold
## 50 push kicks opponent off
## 51 getting up while L foot being held by opponent
## 52 getting up from ground
## 53 holding R arm hold starts and caught in upper body hold
## 54 holding R arm hold starts and caught in upper body hold
## 55 holding R arm hold starts and caught in upper body hold
## 56 holding R arm hold starts and caught in upper body hold
## 57 holding R arm hold starts and caught in upper body hold
## 58 holding R arm hold starts and caught in upper body hold
## 59 holding R arm hold starts and caught in upper body hold
## 60 holding R arm hold starts and caught in upper body hold
## 61 holding R arm hold starts and caught in upper body hold
## 62 holding R arm hold starts and caught in upper body hold
## 63 holding R arm hold starts and caught in upper body hold
## 64 holding R arm hold starts and caught in upper body hold
## 65 holding R arm hold starts and caught in upper body hold
## 66 holding R arm hold starts and caught in upper body hold
## 67 holding R arm hold starts and caught in upper body hold
## 68 holding R arm hold starts and caught in upper body hold
## 69 holding R arm hold starts and caught in upper body hold
## 70 holding R arm hold starts and caught in upper body hold
## 71 caught in R arm hold and caught in upper body hold continues and moves opponent away from side standing control against cage
## 72 holding R arm hold starts and caught in upper body hold
## 73 holding R arm hold starts and caught in upper body hold
## 74 holding R arm hold starts and caught in upper body hold
## 75 holding R arm hold starts and caught in upper body hold
## 76 holding R arm hold starts and caught in upper body hold
## 77 holding R arm hold starts and caught in upper body hold
## 78 holding R arm hold starts and caught in upper body hold
## 79 loses R arm hold and caught in upper body hold
## 80 holding neck hold starts and caught in upper body hold
## 81 breaks upper body hold to switch sides
## 82 caught in upper body hold and holding R arm hold starts
## 83 breaks upper body hold and loses R arm hold and lands a R leg to L leg of opponent sweeping takedown
## 84 lands slight double leg takedown
## 85 not on the ground but leaning over opponent
## 86 caught in open guard hold and lands downward R cross to face, lands downward L cross to face, lands downward R cross to face
## 87 caught in open guard hold and lands downward R cross to face
## 88 caught in open guard hold and lands downward R cross to face
## 89 caught in open guard hold
## 90 caught in open guard hold
## 91 caught in open guard hold
## 92 caught in open guard hold and breaks into opponents open guard hold against cage and lands R downward cross to head
## 93 caught in open guard hold and lands downward R cross to head, lands downward R cross to head
## 94 caught in open guard hold
## 95 caught in open guard hold
## 96 caught in open guard hold
## 97 caught in open guard hold
## 98 caught in open guard hold
## 99 caught in open guard hold
## 100 caught in open guard hold
## 101 caught in open guard hold
## 102 caught in open guard hold
## 103 caught in open guard hold and lands R downward cross to head
## 104 caught in open guard hold and lands R downward cross to head
## 105 caught in open guard hold
## 106 caught in open guard hold
## 107 caught in open guard hold
## 108 caught in open guard hold
## 109 caught in open guard hold
## 110 caught in open guard hold
## 111 caught in open guard hold
## 112 caught in open guard hold
## 113 caught in open guard hold and twists L forearm of opponent at the elbow pushing the hand in open guard hold from standing leaning over position
## 114 caught in open guard hold
## 115 caught in open guard hold
## 116 breaks open guard hold hold
## 117 caught in full guard hold
## 118 caught in full guard hold
## 119 caught in full guard hold
## 120 caught in full guard hold
## 121 caught in full guard hold
## 122 caught in full guard hold
## 123 caught in full guard hold
## 124 lands R elbow to face and caught in full guard hold
## 125 caught in full guard hold
## 126 caught in full guard hold
## 127 caught in full guard hold
## 128 caught in full guard hold
## 129 breaks full guard hold and caught in open guard hold
## 130 caught in open guard hold
## 131 caught in open guard hold
## 132 lands R downward cross to face and caught in open guard hold
## 133 caught in open guard hold
## 134 lands R downward cross to face and caught in open guard hold
## 135 caught in open guard hold
## 136 caught in open guard hold
## 137 caught in open guard hold and misses L downward cross to head, lands R downward cross to head
## 138 caught in open guard hold
## 139 caught in open guard hold
## 140 caught in open guard hold
## 141 caught in open guard hold
## 142 caught in open guard hold
## 143 caught in open guard hold
## 144 caught in open guard hold
## 145 caught in open guard hold
## 146 caught in open guard hold
## 147 caught in open guard hold
## 148 caught in open guard hold
## 149 breaks through leg kicks of open guard and caught in open guard hold
## 150 lands downward R cross to head and caught in open guard hold
## 151 lands downward R cross to head and caught in open guard hold
## 152 lands downward R cross to head and caught in open guard hold, lands downward R cross to head
## 153 lands downward R cross to head and caught in open guard hold, lands downward R cross to head
## 154 misses downward R cross to head and caught in open guard hold, misses downward R cross to head
## 155 lands downward L cross to head and caught in open guard hold, lands downward L cross to head
## 156 lands downward R cross to head and caught in open guard hold
## 157 misses downward R cross to head and caught in open guard hold
## 158 caught in open guard hold
## 159 caught in open guard hold
## 160 lands downward R cross to head and caught in open guard hold, lands downward L cross to head
## 161 misses downward R cross to head and caught in open guard hold, misses downward L cross to head, lands L downward cross to head
## 162 lands downward R cross to head and caught in open guard hold
## 163 lands downward R cross to head and caught in open guard hold, lands downward L cross to head
## 164 lands downward R cross to head and caught in open guard hold
## 165 lands downward L cross to head and caught in open guard hold
## 166 misses downward R cross to head and caught in open guard hold, lands L downward cross to head
## 167 lands downward R cross to head and caught in open guard hold, lands L downward cross to head
## 168 misses downward R cross to head and caught in open guard hold, misses downward L cross to head
## 169 misses downward R cross to head and caught in open guard hold, misses downward L cross to head, misses downward R cross to head
## 170 pressing opponent into ground from the top at opponents shoulders and neck having open guard and legs up off balance removing leverage to kick up and caught in open guard hold
## 171 caught in open guard hold
## 172 knee pinned to abdomen and holding L side control hold starts and breaks open guard hold
## 173 holding side control hold continues
## 174 lands L downward cross to head and holding side control hold continues
## 175 lands L downward hook to face and holding side control hold continues, lands L downward elbow to face
## 176 holding side control hold continues
## 177 holding side control hold continues
## 178 holding side control hold continues
## 179 holding side control hold continues
## 180 holding side control hold continues
## 181 L back side control hold with L knee pinned to opponent's L hip and holding side control hold continues
## 182 holding side control hold continues
## 183 holding side control hold continues
## 184 holding side control hold continues
## 185 holding side control hold continues
## 186 holding side control hold continues
## 187 holding side control hold continues
## 188 holding side control hold continues
## 189 holding side control hold continues
## 190 holding a L armpit and neck choke hold starts and holding side control hold continues
## 191 holding choke hold continues and holding side control hold continues
## 192 holding choke hold continues and holding side control hold continues
## 193 holding choke hold continues and holding side control hold continues
## 194 holding choke hold continues and holding side control hold continues
## 195 holding choke hold continues and holding side control hold continues
## 196 holding choke hold continues and holding side control hold continues
## 197 holding choke hold continues and holding side control hold continues
## 198 holding choke hold continues and holding side control hold continues
## 199 holding choke hold continues and holding side control hold continues
## 200 holding choke hold continues and holding side control hold continues
## 201 holding choke hold continues and holding side control hold continues
## 202 holding choke hold continues and holding side control hold continues
## 203 holding choke hold continues and holding side control hold continues
## 204 holding choke hold continues and holding side control hold continues
## 205 holding choke hold continues and holding side control hold continues
## 206 holding choke hold continues and holding side control hold continues
## 207 loses choke hold and holding side control hold continues and pins L knee on opponent's abdomen
## 208 misses R hammer to face holding side control hold continues with knee pinning opponent's abdomen
## 209 holding side control hold continues
## 210 <NA>
## 211 lands L downward elbow to the face from pinned side control mount
## 212 misses L downward elbow to face
## 213 loses side control hold
## 214 misses downward R cross to face
## 215 caught in open guard hold
## 216 caught in open guard hold
## 217 caught in open guard hold
## 218 caught in open guard hold
## 219 misses downward flying R cross to face and caught in open guard hold
## 220 caught in open guard hold
## 221 caught in open guard hold
## 222 caught in open guard hold
## 223 caught in open guard hold
## 224 caught in open guard hold
## 225 caught in open guard hold
## 226 caught in open guard hold
## 227 caught in open guard hold
## 228 caught in open guard hold
## 229 caught in open guard hold
## 230 caught in open guard hold
## 231 round ends caught in open guard hold
## FightersActionsReactions.X2
## 1 <NA>
## 2 <NA>
## 3 missed L mt kick to L low leg
## 4 <NA>
## 5 <NA>
## 6 lands L mt kick to L leg
## 7 <NA>
## 8 lands L mt kick to L low leg
## 9 caught in R leg hold and missed L mt kick to body
## 10 caught in R leg hold
## 11 caught in R leg hold
## 12 caught in R leg hold
## 13 breaks R leg hold
## 14 misses R cross to face
## 15 misses L jab to face
## 16 <NA>
## 17 <NA>
## 18 <NA>
## 19 misses L hook to face
## 20 <NA>
## 21 lands full guard hold on back holding full guard hold starts
## 22 holding full guard hold continues
## 23 holding full guard hold continues
## 24 holding full guard hold continues
## 25 holding full guard hold continues
## 26 holding full guard hold continues
## 27 holding full guard hold continues
## 28 holding full guard hold continues
## 29 holding full guard hold continues and holding R forearm and pulling from face with L hand and holding L arm with R arm, loses L arm hold, grabs L hand with L hand, loses full guard hold lock at ankles and both arm holds
## 30 loses full guard hold hold and has open guard hold with L knee into chest and R leg behind opponent
## 31 holding open guard hold starts protecting body with L shin against opponent and L leg to the R of opponent no hands or arms locked of opponent, L foot is braced against opponent's R upper thigh and hip and caught in L knee hold
## 32 holding open guard hold continues and caught in L knee hold
## 33 holding open guard hold continues and breaks L knee hold
## 34 holding open guard hold continues and misses L upward kick from open guard hold to body
## 35 holding open guard hold continues
## 36 holding open guard hold continues and misses L upward kick to body from open guard hold
## 37 holding open guard hold continues and tries holding back opponent with L foot in R armpit of opponent while not protecting face while in open guard hold
## 38 loses open guard hold and gets up off back from open guard
## 39 attempting to get up with opponent and do a waste takedown against cage and caught in guillotine hold
## 40 standing while caught in a guillotine hold
## 41 caught in a guillotine hold
## 42 caught in a guillotine hold
## 43 caught in a guillotine hold falls to ground on top
## 44 caught in a guillotine hold
## 45 caught in a guillotine hold
## 46 caught in a guillotine hold
## 47 caught in a guillotine hold
## 48 caught in a guillotine hold
## 49 breaks guillotine hold and breaks full guard hold
## 50 <NA>
## 51 holds L ft of opponent after stepping back from upward kicks
## 52 lands L upper cut to face while opponent getting up
## 53 clinches opponent both standing against the cage and holding upper body hold starts and caught in R arm hold
## 54 caught in R arm hold and holding upper body hold continues
## 55 caught in R arm hold and holding upper body hold continues
## 56 caught in R arm hold and holding upper body hold continues
## 57 caught in R arm hold and holding upper body hold continues
## 58 lands R knee to upper L leg of opponent while holding opponent against the cage and caught in R arm hold and holding upper body hold continues
## 59 lands R knee to upper low L leg while pressing opponent against cage and caught in R arm hold and holding upper body hold continues
## 60 caught in R arm hold and holding upper body hold continues
## 61 lands R knee to upper L leg and caught in R arm hold and holding upper body hold continues
## 62 caught in R arm hold and holding upper body hold continues
## 63 lands R knee to upper L leg and caught in R arm hold and holding upper body hold continues
## 64 caught in R arm hold and holding upper body hold continues
## 65 caught in R arm hold and holding upper body hold continues
## 66 lands high L knee to face of opponent while holding against cage and caught in R arm hold and holding upper body hold continues
## 67 caught in R arm hold and holding upper body hold continues
## 68 caught in R arm hold and holding upper body hold continues
## 69 caught in R arm hold and holding upper body hold continues
## 70 caught in R arm hold and holding upper body hold continues
## 71 caught in R arm hold and holding upper body hold continues
## 72 caught in R arm hold and holding upper body hold continues
## 73 caught in R arm hold and holding upper body hold continues
## 74 misses R knee to upper L leg and caught in R arm hold and holding upper body hold continues
## 75 holding upper body continues and breaks R arm hold
## 76 holding upper body continues and breaks R arm hold
## 77 misses R knee to upper L leg and caught in R arm hold and holding upper body hold continues
## 78 holding upper body continues and breaks R arm hold
## 79 holding upper body continues and breaks R arm hold
## 80 holding upper body hold continues
## 81 loses upper body hold and holding upper body hold starts but different side
## 82 holding upper body hold continues
## 83 loses upper body hold and breaks R arm hold
## 84 <NA>
## 85 lands in sitting open guard
## 86 holding open guard hold hold starts
## 87 holding open guard hold continues
## 88 holding open guard hold continues
## 89 holding open guard hold continues
## 90 holding open guard hold continues
## 91 holding open guard hold continues
## 92 holding open guard hold continues
## 93 holding open guard hold continues
## 94 holding open guard hold continues
## 95 holding open guard hold continues
## 96 holding open guard hold continues
## 97 holding open guard hold continues
## 98 holding open guard hold continues
## 99 holding open guard hold continues
## 100 holding open guard hold continues
## 101 holding open guard hold continues and misses upward L jab to face
## 102 holding open guard hold continues
## 103 holding open guard hold continues
## 104 holding open guard hold continues
## 105 holding open guard hold continues
## 106 holding open guard hold continues
## 107 holding open guard hold continues
## 108 holding open guard hold continues
## 109 holding open guard hold continues
## 110 holding open guard hold continues
## 111 holding open guard hold continues
## 112 holding open guard hold continues
## 113 holding open guard hold continues
## 114 holding open guard hold continues
## 115 twists body toward L arm to avoid L arm lock at elbow and holding open guard hold continues
## 116 loses open guard hold
## 117 holding full guard hold starts
## 118 holding full guard hold continues
## 119 holding full guard hold continues
## 120 holding full guard hold continues
## 121 holding full guard hold continues
## 122 holding full guard hold continues
## 123 holding full guard hold continues
## 124 holding full guard hold continues
## 125 holding full guard hold continues
## 126 holding full guard hold continues
## 127 holding full guard hold continues
## 128 holding full guard hold continues
## 129 loses full guard hold and holding open guard hold starts
## 130 holding open guard hold continues
## 131 holding open guard hold continues
## 132 holding open guard hold continues
## 133 holding open guard hold continues
## 134 holding open guard hold continues
## 135 holding open guard hold continues
## 136 holding open guard hold continues
## 137 holding open guard hold continues
## 138 misses R upward puch kick and holding open guard hold continues
## 139 holding open guard hold continues
## 140 holding open guard hold continues
## 141 holding open guard hold continues
## 142 holding open guard hold continues
## 143 holding open guard hold continues
## 144 holding open guard hold continues
## 145 holding open guard hold continues
## 146 holding open guard hold continues
## 147 holding open guard hold continues
## 148 holding open guard hold continues
## 149 holding open guard hold continues
## 150 holding open guard hold continues
## 151 holding open guard hold continues
## 152 holding open guard hold continues
## 153 holding open guard hold continues
## 154 holding open guard hold continues
## 155 holding open guard hold continues
## 156 holding open guard hold continues
## 157 holding open guard hold continues
## 158 holding open guard hold continues
## 159 holding open guard hold continues
## 160 holding open guard hold continues
## 161 holding open guard hold continues
## 162 holding open guard hold continues
## 163 holding open guard hold continues
## 164 holding open guard hold continues
## 165 holding open guard hold continues
## 166 holding open guard hold continues
## 167 holding open guard hold continues
## 168 holding open guard hold continues
## 169 holding open guard hold continues
## 170 holding open guard hold continues
## 171 holding open guard hold continues
## 172 loses open guard hold
## 173 caught in side control hold
## 174 caught in side control hold
## 175 caught in side control hold
## 176 caught in side control hold
## 177 caught in side control hold
## 178 caught in side control hold
## 179 caught in side control hold
## 180 caught in side control hold
## 181 caught in side control hold
## 182 caught in side control hold
## 183 caught in side control hold
## 184 caught in side control hold
## 185 caught in side control hold
## 186 caught in side control hold
## 187 caught in side control hold
## 188 caught in side control hold
## 189 caught in side control hold
## 190 caught in choke hold and caught in side control hold
## 191 caught in choke hold and caught in side control hold
## 192 caught in choke hold and caught in side control hold
## 193 caught in choke hold and caught in side control hold
## 194 caught in choke hold and caught in side control hold
## 195 caught in choke hold and caught in side control hold
## 196 caught in choke hold and caught in side control hold
## 197 caught in choke hold and caught in side control hold
## 198 caught in choke hold and caught in side control hold
## 199 caught in choke hold and caught in side control hold
## 200 caught in choke hold and caught in side control hold
## 201 caught in choke hold and caught in side control hold
## 202 caught in choke hold and caught in side control hold
## 203 caught in choke hold and caught in side control hold
## 204 caught in choke hold and caught in side control hold
## 205 caught in choke hold and caught in side control hold
## 206 caught in choke hold and caught in side control hold
## 207 breaks choke hold and caught in side control hold
## 208 caught in side control hold
## 209 caught in side control hold
## 210 caught in side control hold
## 211 caught in side control hold
## 212 caught in side control hold
## 213 misses L upward kick to face but breaks the pinned side control mount hold
## 214 <NA>
## 215 misses upward R kick to face and in open guard hold free room and holding open guard hold starts
## 216 holding open guard hold continues
## 217 holding open guard hold continues
## 218 holding open guard hold continues
## 219 holding open guard hold continues
## 220 holding open guard hold continues
## 221 holding open guard hold and turning and push kicking legs towards opponent
## 222 holding open guard hold
## 223 holding open guard hold
## 224 holding open guard hold
## 225 holding open guard hold
## 226 holding open guard hold
## 227 holding open guard hold
## 228 holding open guard hold
## 229 holding open guard hold
## 230 holding open guard hold
## 231 round ends in holding open guard hold
## Notes Crossl.X1 Kneel.X1 Elbowl.X1 Hookl.X1 Jabl.X1 Kickl.X1 Crossl.X2
## 1 Germaine 0 0 0 0 0 0 0
## 2 Germaine 0 0 0 0 0 0 0
## 3 Germaine 0 0 0 0 0 0 0
## 4 Germaine 0 0 0 0 0 0 0
## 5 Germaine 0 0 0 0 0 1 0
## 6 Germaine 0 0 0 0 0 0 0
## 7 Germaine 0 0 0 0 0 1 0
## 8 Germaine 0 0 0 0 0 0 0
## 9 Germaine 0 0 0 0 0 0 0
## 10 Germaine 0 0 0 0 0 0 0
## 11 Germaine 0 0 0 0 0 0 0
## 12 Germaine 0 0 0 0 0 0 0
## 13 Germaine 0 0 0 0 0 0 0
## 14 Germaine 0 0 0 0 0 1 0
## 15 Germaine 0 0 0 0 0 0 0
## 16 Germaine 0 0 0 0 0 0 0
## 17 Germaine 0 0 0 0 0 0 0
## 18 Germaine 0 0 0 0 0 0 0
## 19 Germaine 0 0 0 0 0 0 0
## 20 Germaine 0 0 0 0 0 0 0
## 21 Germaine 0 0 0 0 0 0 0
## 22 Germaine 0 0 0 0 0 0 0
## 23 Germaine 0 0 0 0 0 0 0
## 24 Germaine 0 0 0 0 0 0 0
## 25 Germaine 0 0 0 0 0 0 0
## 26 Germaine 0 0 0 0 0 0 0
## 27 Germaine 0 0 0 0 0 0 0
## 28 Germaine 0 0 0 0 0 0 0
## 29 Germaine 0 0 0 0 0 0 0
## 30 Germaine 0 0 0 0 0 0 0
## 31 Germaine 0 0 0 0 0 0 0
## 32 Germaine 0 0 0 0 0 0 0
## 33 Germaine 1 1 0 0 0 0 0
## 34 Germaine 1 0 0 0 0 0 0
## 35 Germaine 0 0 0 0 0 0 0
## 36 Germaine 0 0 0 0 0 0 0
## 37 Germaine 1 0 0 0 0 0 0
## 38 Germaine 0 0 0 0 0 0 0
## 39 Germaine 0 0 0 0 0 0 0
## 40 Germaine 0 0 0 0 0 0 0
## 41 Germaine 0 0 0 0 0 0 0
## 42 Germaine 0 0 0 0 0 0 0
## 43 Germaine 0 0 0 0 0 0 0
## 44 Germaine 0 0 0 0 0 0 0
## 45 Germaine 0 0 0 0 0 0 0
## 46 Germaine 0 0 0 0 0 0 0
## 47 Germaine 0 0 0 0 0 0 0
## 48 Germaine 0 0 0 0 0 0 0
## 49 Germaine 0 0 0 0 0 0 0
## 50 Germaine 0 0 0 0 0 0 0
## 51 Germaine 0 0 0 0 0 0 0
## 52 Germaine 0 0 0 0 0 0 0
## 53 Germaine 0 0 0 0 0 0 0
## 54 Germaine 0 0 0 0 0 0 0
## 55 Germaine 0 0 0 0 0 0 0
## 56 Germaine 0 0 0 0 0 0 0
## 57 Germaine 0 0 0 0 0 0 0
## 58 Germaine 0 0 0 0 0 0 0
## 59 Germaine 0 0 0 0 0 0 0
## 60 Germaine 0 0 0 0 0 0 0
## 61 Germaine 0 0 0 0 0 0 0
## 62 Germaine 0 0 0 0 0 0 0
## 63 Germaine 0 0 0 0 0 0 0
## 64 Germaine 0 0 0 0 0 0 0
## 65 Germaine 0 0 0 0 0 0 0
## 66 Germaine 0 0 0 0 0 0 0
## 67 Germaine 0 0 0 0 0 0 0
## 68 Germaine 0 0 0 0 0 0 0
## 69 Germaine 0 0 0 0 0 0 0
## 70 Germaine 0 0 0 0 0 0 0
## 71 Germaine 0 0 0 0 0 0 0
## 72 Germaine 0 0 0 0 0 0 0
## 73 Germaine 0 0 0 0 0 0 0
## 74 Germaine 0 0 0 0 0 0 0
## 75 Germaine 0 0 0 0 0 0 0
## 76 Germaine 0 0 0 0 0 0 0
## 77 Germaine 0 0 0 0 0 0 0
## 78 Germaine 0 0 0 0 0 0 0
## 79 Germaine 0 0 0 0 0 0 0
## 80 Germaine 0 0 0 0 0 0 0
## 81 Germaine 0 0 0 0 0 0 0
## 82 Germaine 0 0 0 0 0 0 0
## 83 Germaine 0 0 0 0 0 0 0
## 84 Germaine 0 0 0 0 0 0 0
## 85 Germaine 0 0 0 0 0 0 0
## 86 Germaine 1 0 0 0 0 0 0
## 87 Germaine 1 0 0 0 0 0 0
## 88 Germaine 1 0 0 0 0 0 0
## 89 Germaine 0 0 0 0 0 0 0
## 90 Germaine 0 0 0 0 0 0 0
## 91 Germaine 0 0 0 0 0 0 0
## 92 Germaine 1 0 0 0 0 0 0
## 93 Germaine 1 0 0 0 0 0 0
## 94 Germaine 0 0 0 0 0 0 0
## 95 Germaine 0 0 0 0 0 0 0
## 96 Germaine 0 0 0 0 0 0 0
## 97 Germaine 0 0 0 0 0 0 0
## 98 Germaine 0 0 0 0 0 0 0
## 99 Germaine 0 0 0 0 0 0 0
## 100 Germaine 0 0 0 0 0 0 0
## 101 Germaine 0 0 0 0 0 0 0
## 102 Germaine 0 0 0 0 0 0 0
## 103 Germaine 1 0 0 0 0 0 0
## 104 Germaine 1 0 0 0 0 0 0
## 105 Germaine 0 0 0 0 0 0 0
## 106 Germaine 0 0 0 0 0 0 0
## 107 Germaine 0 0 0 0 0 0 0
## 108 Germaine 0 0 0 0 0 0 0
## 109 Germaine 0 0 0 0 0 0 0
## 110 Germaine 0 0 0 0 0 0 0
## 111 Germaine 0 0 0 0 0 0 0
## 112 Germaine 0 0 0 0 0 0 0
## 113 Germaine 0 0 0 0 0 0 0
## 114 Germaine 0 0 0 0 0 0 0
## 115 Germaine 0 0 0 0 0 0 0
## 116 Germaine 0 0 0 0 0 0 0
## 117 Germaine 0 0 0 0 0 0 0
## 118 Germaine 0 0 0 0 0 0 0
## 119 Germaine 0 0 0 0 0 0 0
## 120 Germaine 0 0 0 0 0 0 0
## 121 Germaine 0 0 0 0 0 0 0
## 122 Germaine 0 0 0 0 0 0 0
## 123 Germaine 0 0 0 0 0 0 0
## 124 Germaine 0 0 1 0 0 0 0
## 125 Germaine 0 0 0 0 0 0 0
## 126 Germaine 0 0 0 0 0 0 0
## 127 Germaine 0 0 0 0 0 0 0
## 128 Germaine 0 0 0 0 0 0 0
## 129 Germaine 0 0 0 0 0 0 0
## 130 Germaine 0 0 0 0 0 0 0
## 131 Germaine 0 0 0 0 0 0 0
## 132 Germaine 1 0 0 0 0 0 0
## 133 Germaine 0 0 0 0 0 0 0
## 134 Germaine 1 0 0 0 0 0 0
## 135 Germaine 0 0 0 0 0 0 0
## 136 Germaine 0 0 0 0 0 0 0
## 137 Germaine 0 0 0 0 0 0 0
## 138 Germaine 0 0 0 0 0 0 0
## 139 Germaine 0 0 0 0 0 0 0
## 140 Germaine 0 0 0 0 0 0 0
## 141 Germaine 0 0 0 0 0 0 0
## 142 Germaine 0 0 0 0 0 0 0
## 143 Germaine 0 0 0 0 0 0 0
## 144 Germaine 0 0 0 0 0 0 0
## 145 Germaine 0 0 0 0 0 0 0
## 146 Germaine 0 0 0 0 0 0 0
## 147 Germaine 0 0 0 0 0 0 0
## 148 Germaine 0 0 0 0 0 0 0
## 149 Germaine 0 0 0 0 0 0 0
## 150 Germaine 1 0 0 0 0 0 0
## 151 Germaine 1 0 0 0 0 0 0
## 152 Germaine 1 0 0 0 0 0 0
## 153 Germaine 1 0 0 0 0 0 0
## 154 Germaine 0 0 0 0 0 0 0
## 155 Germaine 1 0 0 0 0 0 0
## 156 Germaine 1 0 0 0 0 0 0
## 157 Germaine 0 0 0 0 0 0 0
## 158 Germaine 0 0 0 0 0 0 0
## 159 Germaine 0 0 0 0 0 0 0
## 160 Germaine 1 0 0 0 0 0 0
## 161 Germaine 0 0 0 0 0 0 0
## 162 Germaine 1 0 0 0 0 0 0
## 163 Germaine 1 0 0 0 0 0 0
## 164 Germaine 1 0 0 0 0 0 0
## 165 Germaine 1 0 0 0 0 0 0
## 166 Germaine 0 0 0 0 0 0 0
## 167 Germaine 1 0 0 0 0 0 0
## 168 Germaine 0 0 0 0 0 0 0
## 169 Germaine 0 0 0 0 0 0 0
## 170 Germaine 0 0 0 0 0 0 0
## 171 Germaine 0 0 0 0 0 0 0
## 172 Germaine 0 0 0 0 0 0 0
## 173 Germaine 0 0 0 0 0 0 0
## 174 Germaine 1 0 0 0 0 0 0
## 175 Germaine 0 0 0 1 0 0 0
## 176 Germaine 0 0 0 0 0 0 0
## 177 Germaine 0 0 0 0 0 0 0
## 178 Germaine 0 0 0 0 0 0 0
## 179 Germaine 0 0 0 0 0 0 0
## 180 Germaine 0 0 0 0 0 0 0
## 181 Germaine 0 0 0 0 0 0 0
## 182 Germaine 0 0 0 0 0 0 0
## 183 Germaine 0 0 0 0 0 0 0
## 184 Germaine 0 0 0 0 0 0 0
## 185 Germaine 0 0 0 0 0 0 0
## 186 Germaine 0 0 0 0 0 0 0
## 187 Germaine 0 0 0 0 0 0 0
## 188 Germaine 0 0 0 0 0 0 0
## 189 Germaine 0 0 0 0 0 0 0
## 190 Germaine 0 0 0 0 0 0 0
## 191 Germaine 0 0 0 0 0 0 0
## 192 Germaine 0 0 0 0 0 0 0
## 193 Germaine 0 0 0 0 0 0 0
## 194 Germaine 0 0 0 0 0 0 0
## 195 Germaine 0 0 0 0 0 0 0
## 196 Germaine 0 0 0 0 0 0 0
## 197 Germaine 0 0 0 0 0 0 0
## 198 Germaine 0 0 0 0 0 0 0
## 199 Germaine 0 0 0 0 0 0 0
## 200 Germaine 0 0 0 0 0 0 0
## 201 Germaine 0 0 0 0 0 0 0
## 202 Germaine 0 0 0 0 0 0 0
## 203 Germaine 0 0 0 0 0 0 0
## 204 Germaine 0 0 0 0 0 0 0
## 205 Germaine 0 0 0 0 0 0 0
## 206 Germaine 0 0 0 0 0 0 0
## 207 Germaine 0 0 0 0 0 0 0
## 208 Germaine 0 0 0 0 0 0 0
## 209 Germaine 0 0 0 0 0 0 0
## 210 Germaine 0 0 0 0 0 0 0
## 211 Germaine 0 0 1 0 0 0 0
## 212 Germaine 0 0 0 0 0 0 0
## 213 Germaine 0 0 0 0 0 0 0
## 214 Germaine 0 0 0 0 0 0 0
## 215 Germaine 0 0 0 0 0 0 0
## 216 Germaine 0 0 0 0 0 0 0
## 217 Germaine 0 0 0 0 0 0 0
## 218 Germaine 0 0 0 0 0 0 0
## 219 Germaine 0 0 0 0 0 0 0
## 220 Germaine 0 0 0 0 0 0 0
## 221 Germaine 0 0 0 0 0 0 0
## 222 Germaine 0 0 0 0 0 0 0
## 223 Germaine 0 0 0 0 0 0 0
## 224 Germaine 0 0 0 0 0 0 0
## 225 Germaine 0 0 0 0 0 0 0
## 226 Germaine 0 0 0 0 0 0 0
## 227 Germaine 0 0 0 0 0 0 0
## 228 Germaine 0 0 0 0 0 0 0
## 229 Germaine 0 0 0 0 0 0 0
## 230 Germaine 0 0 0 0 0 0 0
## 231 Germaine 0 0 0 0 0 0 0
## Kneel.X2 Elbowl.X2 Hookl.X2 Jabl.X2 Kickl.X2 upperl.X1 upperl.X2
## 1 0 0 0 0 0 0 0
## 2 0 0 0 0 0 0 0
## 3 0 0 0 0 0 0 0
## 4 0 0 0 0 0 0 0
## 5 0 0 0 0 0 0 0
## 6 0 0 0 0 1 0 0
## 7 0 0 0 0 0 0 0
## 8 0 0 0 0 1 0 0
## 9 0 0 0 0 0 0 0
## 10 0 0 0 0 0 0 0
## 11 0 0 0 0 0 0 0
## 12 0 0 0 0 0 0 0
## 13 0 0 0 0 0 0 0
## 14 0 0 0 0 0 0 0
## 15 0 0 0 0 0 0 0
## 16 0 0 0 0 0 0 0
## 17 0 0 0 0 0 0 0
## 18 0 0 0 0 0 0 0
## 19 0 0 0 0 0 0 0
## 20 0 0 0 0 0 0 0
## 21 0 0 0 0 0 0 0
## 22 0 0 0 0 0 0 0
## 23 0 0 0 0 0 0 0
## 24 0 0 0 0 0 0 0
## 25 0 0 0 0 0 0 0
## 26 0 0 0 0 0 0 0
## 27 0 0 0 0 0 0 0
## 28 0 0 0 0 0 0 0
## 29 0 0 0 0 0 0 0
## 30 0 0 0 0 0 0 0
## 31 0 0 0 0 0 0 0
## 32 0 0 0 0 0 0 0
## 33 0 0 0 0 0 0 0
## 34 0 0 0 0 0 0 0
## 35 0 0 0 0 0 0 0
## 36 0 0 0 0 0 0 0
## 37 0 0 0 0 0 0 0
## 38 0 0 0 0 0 0 0
## 39 0 0 0 0 0 0 0
## 40 0 0 0 0 0 0 0
## 41 0 0 0 0 0 0 0
## 42 0 0 0 0 0 0 0
## 43 0 0 0 0 0 0 0
## 44 0 0 0 0 0 0 0
## 45 0 0 0 0 0 0 0
## 46 0 0 0 0 0 0 0
## 47 0 0 0 0 0 0 0
## 48 0 0 0 0 0 0 0
## 49 0 0 0 0 0 0 0
## 50 0 0 0 0 0 0 0
## 51 0 0 0 0 0 0 0
## 52 0 0 0 0 0 0 1
## 53 0 0 0 0 0 0 0
## 54 0 0 0 0 0 0 0
## 55 0 0 0 0 0 0 0
## 56 0 0 0 0 0 0 0
## 57 0 0 0 0 0 0 0
## 58 1 0 0 0 0 0 1
## 59 1 0 0 0 0 0 1
## 60 0 0 0 0 0 0 0
## 61 1 0 0 0 0 0 1
## 62 0 0 0 0 0 0 0
## 63 1 0 0 0 0 0 1
## 64 0 0 0 0 0 0 0
## 65 0 0 0 0 0 0 0
## 66 1 0 0 0 0 0 1
## 67 0 0 0 0 0 0 0
## 68 0 0 0 0 0 0 0
## 69 0 0 0 0 0 0 0
## 70 0 0 0 0 0 0 0
## 71 0 0 0 0 0 0 0
## 72 0 0 0 0 0 0 0
## 73 0 0 0 0 0 0 0
## 74 0 0 0 0 0 0 0
## 75 0 0 0 0 0 0 0
## 76 0 0 0 0 0 0 0
## 77 0 0 0 0 0 0 0
## 78 0 0 0 0 0 0 0
## 79 0 0 0 0 0 0 0
## 80 0 0 0 0 0 0 0
## 81 0 0 0 0 0 0 0
## 82 0 0 0 0 0 0 0
## 83 0 0 0 0 0 0 0
## 84 0 0 0 0 0 0 0
## 85 0 0 0 0 0 0 0
## 86 0 0 0 0 0 0 0
## 87 0 0 0 0 0 0 0
## 88 0 0 0 0 0 0 0
## 89 0 0 0 0 0 0 0
## 90 0 0 0 0 0 0 0
## 91 0 0 0 0 0 0 0
## 92 0 0 0 0 0 0 0
## 93 0 0 0 0 0 0 0
## 94 0 0 0 0 0 0 0
## 95 0 0 0 0 0 0 0
## 96 0 0 0 0 0 0 0
## 97 0 0 0 0 0 0 0
## 98 0 0 0 0 0 0 0
## 99 0 0 0 0 0 0 0
## 100 0 0 0 0 0 0 0
## 101 0 0 0 0 0 0 0
## 102 0 0 0 0 0 0 0
## 103 0 0 0 0 0 0 0
## 104 0 0 0 0 0 0 0
## 105 0 0 0 0 0 0 0
## 106 0 0 0 0 0 0 0
## 107 0 0 0 0 0 0 0
## 108 0 0 0 0 0 0 0
## 109 0 0 0 0 0 0 0
## 110 0 0 0 0 0 0 0
## 111 0 0 0 0 0 0 0
## 112 0 0 0 0 0 0 0
## 113 0 0 0 0 0 0 0
## 114 0 0 0 0 0 0 0
## 115 0 0 0 0 0 0 0
## 116 0 0 0 0 0 0 0
## 117 0 0 0 0 0 0 0
## 118 0 0 0 0 0 0 0
## 119 0 0 0 0 0 0 0
## 120 0 0 0 0 0 0 0
## 121 0 0 0 0 0 0 0
## 122 0 0 0 0 0 0 0
## 123 0 0 0 0 0 0 0
## 124 0 0 0 0 0 0 0
## 125 0 0 0 0 0 0 0
## 126 0 0 0 0 0 0 0
## 127 0 0 0 0 0 0 0
## 128 0 0 0 0 0 0 0
## 129 0 0 0 0 0 0 0
## 130 0 0 0 0 0 0 0
## 131 0 0 0 0 0 0 0
## 132 0 0 0 0 0 0 0
## 133 0 0 0 0 0 0 0
## 134 0 0 0 0 0 0 0
## 135 0 0 0 0 0 0 0
## 136 0 0 0 0 0 0 0
## 137 0 0 0 0 0 0 0
## 138 0 0 0 0 0 0 0
## 139 0 0 0 0 0 0 0
## 140 0 0 0 0 0 0 0
## 141 0 0 0 0 0 0 0
## 142 0 0 0 0 0 0 0
## 143 0 0 0 0 0 0 0
## 144 0 0 0 0 0 0 0
## 145 0 0 0 0 0 0 0
## 146 0 0 0 0 0 0 0
## 147 0 0 0 0 0 0 0
## 148 0 0 0 0 0 0 0
## 149 0 0 0 0 0 0 0
## 150 0 0 0 0 0 0 0
## 151 0 0 0 0 0 0 0
## 152 0 0 0 0 0 0 0
## 153 0 0 0 0 0 0 0
## 154 0 0 0 0 0 0 0
## 155 0 0 0 0 0 0 0
## 156 0 0 0 0 0 0 0
## 157 0 0 0 0 0 0 0
## 158 0 0 0 0 0 0 0
## 159 0 0 0 0 0 0 0
## 160 0 0 0 0 0 0 0
## 161 0 0 0 0 0 0 0
## 162 0 0 0 0 0 0 0
## 163 0 0 0 0 0 0 0
## 164 0 0 0 0 0 0 0
## 165 0 0 0 0 0 0 0
## 166 0 0 0 0 0 0 0
## 167 0 0 0 0 0 0 0
## 168 0 0 0 0 0 0 0
## 169 0 0 0 0 0 0 0
## 170 0 0 0 0 0 0 0
## 171 0 0 0 0 0 0 0
## 172 0 0 0 0 0 0 0
## 173 0 0 0 0 0 0 0
## 174 0 0 0 0 0 0 0
## 175 0 0 0 0 0 0 0
## 176 0 0 0 0 0 0 0
## 177 0 0 0 0 0 0 0
## 178 0 0 0 0 0 0 0
## 179 0 0 0 0 0 0 0
## 180 0 0 0 0 0 0 0
## 181 0 0 0 0 0 0 0
## 182 0 0 0 0 0 0 0
## 183 0 0 0 0 0 0 0
## 184 0 0 0 0 0 0 0
## 185 0 0 0 0 0 0 0
## 186 0 0 0 0 0 0 0
## 187 0 0 0 0 0 0 0
## 188 0 0 0 0 0 0 0
## 189 0 0 0 0 0 0 0
## 190 0 0 0 0 0 0 0
## 191 0 0 0 0 0 0 0
## 192 0 0 0 0 0 0 0
## 193 0 0 0 0 0 0 0
## 194 0 0 0 0 0 0 0
## 195 0 0 0 0 0 0 0
## 196 0 0 0 0 0 0 0
## 197 0 0 0 0 0 0 0
## 198 0 0 0 0 0 0 0
## 199 0 0 0 0 0 0 0
## 200 0 0 0 0 0 0 0
## 201 0 0 0 0 0 0 0
## 202 0 0 0 0 0 0 0
## 203 0 0 0 0 0 0 0
## 204 0 0 0 0 0 0 0
## 205 0 0 0 0 0 0 0
## 206 0 0 0 0 0 0 0
## 207 0 0 0 0 0 0 0
## 208 0 0 0 0 0 0 0
## 209 0 0 0 0 0 0 0
## 210 0 0 0 0 0 0 0
## 211 0 0 0 0 0 0 0
## 212 0 0 0 0 0 0 0
## 213 0 0 0 0 0 0 0
## 214 0 0 0 0 0 0 0
## 215 0 0 0 0 0 0 0
## 216 0 0 0 0 0 0 0
## 217 0 0 0 0 0 0 0
## 218 0 0 0 0 0 0 0
## 219 0 0 0 0 0 0 0
## 220 0 0 0 0 0 0 0
## 221 0 0 0 0 0 0 0
## 222 0 0 0 0 0 0 0
## 223 0 0 0 0 0 0 0
## 224 0 0 0 0 0 0 0
## 225 0 0 0 0 0 0 0
## 226 0 0 0 0 0 0 0
## 227 0 0 0 0 0 0 0
## 228 0 0 0 0 0 0 0
## 229 0 0 0 0 0 0 0
## 230 0 0 0 0 0 0 0
## 231 0 0 0 0 0 0 0
## takedownl.X1 takedownl.X2 hammerl.X1 hammerl.X2 Cross2l.X1 Knee2l.X1
## 1 0 0 0 0 0 0
## 2 0 0 0 0 0 0
## 3 0 0 0 0 0 0
## 4 0 0 0 0 0 0
## 5 0 0 0 0 0 0
## 6 0 0 0 0 0 0
## 7 0 0 0 0 0 0
## 8 0 0 0 0 0 0
## 9 0 0 0 0 0 0
## 10 0 0 0 0 0 0
## 11 0 0 0 0 0 0
## 12 0 0 0 0 0 0
## 13 0 0 0 0 0 0
## 14 0 0 0 0 0 0
## 15 0 0 0 0 0 0
## 16 0 0 0 0 0 0
## 17 0 0 0 0 0 0
## 18 0 0 0 0 0 0
## 19 0 0 0 0 0 0
## 20 1 0 0 0 0 0
## 21 0 0 0 0 0 0
## 22 0 0 0 0 0 0
## 23 0 0 0 0 0 0
## 24 0 0 0 0 0 0
## 25 0 0 0 0 0 0
## 26 0 0 0 0 0 0
## 27 0 0 0 0 0 0
## 28 0 0 0 0 0 0
## 29 0 0 0 0 0 0
## 30 0 0 0 0 0 0
## 31 0 0 0 0 0 0
## 32 0 0 0 0 0 0
## 33 0 0 0 0 0 0
## 34 0 0 0 0 0 0
## 35 0 0 0 0 0 0
## 36 0 0 0 0 0 0
## 37 0 0 0 0 0 0
## 38 0 0 0 0 0 0
## 39 0 0 0 0 0 0
## 40 0 0 0 0 0 0
## 41 0 0 0 0 0 0
## 42 0 0 0 0 0 0
## 43 0 0 0 0 0 0
## 44 0 0 0 0 0 0
## 45 0 0 0 0 0 0
## 46 0 0 0 0 0 0
## 47 0 0 0 0 0 0
## 48 0 0 0 0 0 0
## 49 0 0 0 0 0 0
## 50 0 0 0 0 0 0
## 51 0 0 0 0 0 0
## 52 0 0 0 0 0 0
## 53 0 0 0 0 0 0
## 54 0 0 0 0 0 0
## 55 0 0 0 0 0 0
## 56 0 0 0 0 0 0
## 57 0 0 0 0 0 0
## 58 0 0 0 0 0 0
## 59 0 0 0 0 0 0
## 60 0 0 0 0 0 0
## 61 0 0 0 0 0 0
## 62 0 0 0 0 0 0
## 63 0 0 0 0 0 0
## 64 0 0 0 0 0 0
## 65 0 0 0 0 0 0
## 66 0 0 0 0 0 0
## 67 0 0 0 0 0 0
## 68 0 0 0 0 0 0
## 69 0 0 0 0 0 0
## 70 0 0 0 0 0 0
## 71 0 0 0 0 0 0
## 72 0 0 0 0 0 0
## 73 0 0 0 0 0 0
## 74 0 0 0 0 0 0
## 75 0 0 0 0 0 0
## 76 0 0 0 0 0 0
## 77 0 0 0 0 0 0
## 78 0 0 0 0 0 0
## 79 0 0 0 0 0 0
## 80 0 0 0 0 0 0
## 81 0 0 0 0 0 0
## 82 0 0 0 0 0 0
## 83 1 0 0 0 0 0
## 84 1 0 0 0 0 0
## 85 0 0 0 0 0 0
## 86 0 0 0 0 1 0
## 87 0 0 0 0 0 0
## 88 0 0 0 0 0 0
## 89 0 0 0 0 0 0
## 90 0 0 0 0 0 0
## 91 0 0 0 0 0 0
## 92 0 0 0 0 0 0
## 93 0 0 0 0 1 0
## 94 0 0 0 0 0 0
## 95 0 0 0 0 0 0
## 96 0 0 0 0 0 0
## 97 0 0 0 0 0 0
## 98 0 0 0 0 0 0
## 99 0 0 0 0 0 0
## 100 0 0 0 0 0 0
## 101 0 0 0 0 0 0
## 102 0 0 0 0 0 0
## 103 0 0 0 0 0 0
## 104 0 0 0 0 0 0
## 105 0 0 0 0 0 0
## 106 0 0 0 0 0 0
## 107 0 0 0 0 0 0
## 108 0 0 0 0 0 0
## 109 0 0 0 0 0 0
## 110 0 0 0 0 0 0
## 111 0 0 0 0 0 0
## 112 0 0 0 0 0 0
## 113 0 0 0 0 0 0
## 114 0 0 0 0 0 0
## 115 0 0 0 0 0 0
## 116 0 0 0 0 0 0
## 117 0 0 0 0 0 0
## 118 0 0 0 0 0 0
## 119 0 0 0 0 0 0
## 120 0 0 0 0 0 0
## 121 0 0 0 0 0 0
## 122 0 0 0 0 0 0
## 123 0 0 0 0 0 0
## 124 0 0 0 0 0 0
## 125 0 0 0 0 0 0
## 126 0 0 0 0 0 0
## 127 0 0 0 0 0 0
## 128 0 0 0 0 0 0
## 129 0 0 0 0 0 0
## 130 0 0 0 0 0 0
## 131 0 0 0 0 0 0
## 132 0 0 0 0 0 0
## 133 0 0 0 0 0 0
## 134 0 0 0 0 0 0
## 135 0 0 0 0 0 0
## 136 0 0 0 0 0 0
## 137 0 0 0 0 1 0
## 138 0 0 0 0 0 0
## 139 0 0 0 0 0 0
## 140 0 0 0 0 0 0
## 141 0 0 0 0 0 0
## 142 0 0 0 0 0 0
## 143 0 0 0 0 0 0
## 144 0 0 0 0 0 0
## 145 0 0 0 0 0 0
## 146 0 0 0 0 0 0
## 147 0 0 0 0 0 0
## 148 0 0 0 0 0 0
## 149 0 0 0 0 0 0
## 150 0 0 0 0 0 0
## 151 0 0 0 0 0 0
## 152 0 0 0 0 1 0
## 153 0 0 0 0 1 0
## 154 0 0 0 0 0 0
## 155 0 0 0 0 1 0
## 156 0 0 0 0 0 0
## 157 0 0 0 0 0 0
## 158 0 0 0 0 0 0
## 159 0 0 0 0 0 0
## 160 0 0 0 0 1 0
## 161 0 0 0 0 0 0
## 162 0 0 0 0 0 0
## 163 0 0 0 0 1 0
## 164 0 0 0 0 0 0
## 165 0 0 0 0 0 0
## 166 0 0 0 0 1 0
## 167 0 0 0 0 1 0
## 168 0 0 0 0 0 0
## 169 0 0 0 0 0 0
## 170 0 0 0 0 0 0
## 171 0 0 0 0 0 0
## 172 0 0 0 0 0 0
## 173 0 0 0 0 0 0
## 174 0 0 0 0 0 0
## 175 0 0 0 0 0 0
## 176 0 0 0 0 0 0
## 177 0 0 0 0 0 0
## 178 0 0 0 0 0 0
## 179 0 0 0 0 0 0
## 180 0 0 0 0 0 0
## 181 0 0 0 0 0 0
## 182 0 0 0 0 0 0
## 183 0 0 0 0 0 0
## 184 0 0 0 0 0 0
## 185 0 0 0 0 0 0
## 186 0 0 0 0 0 0
## 187 0 0 0 0 0 0
## 188 0 0 0 0 0 0
## 189 0 0 0 0 0 0
## 190 0 0 0 0 0 0
## 191 0 0 0 0 0 0
## 192 0 0 0 0 0 0
## 193 0 0 0 0 0 0
## 194 0 0 0 0 0 0
## 195 0 0 0 0 0 0
## 196 0 0 0 0 0 0
## 197 0 0 0 0 0 0
## 198 0 0 0 0 0 0
## 199 0 0 0 0 0 0
## 200 0 0 0 0 0 0
## 201 0 0 0 0 0 0
## 202 0 0 0 0 0 0
## 203 0 0 0 0 0 0
## 204 0 0 0 0 0 0
## 205 0 0 0 0 0 0
## 206 0 0 0 0 0 0
## 207 0 0 0 0 0 0
## 208 0 0 0 0 0 0
## 209 0 0 0 0 0 0
## 210 0 0 0 0 0 0
## 211 0 0 0 0 0 0
## 212 0 0 0 0 0 0
## 213 0 0 0 0 0 0
## 214 0 0 0 0 0 0
## 215 0 0 0 0 0 0
## 216 0 0 0 0 0 0
## 217 0 0 0 0 0 0
## 218 0 0 0 0 0 0
## 219 0 0 0 0 0 0
## 220 0 0 0 0 0 0
## 221 0 0 0 0 0 0
## 222 0 0 0 0 0 0
## 223 0 0 0 0 0 0
## 224 0 0 0 0 0 0
## 225 0 0 0 0 0 0
## 226 0 0 0 0 0 0
## 227 0 0 0 0 0 0
## 228 0 0 0 0 0 0
## 229 0 0 0 0 0 0
## 230 0 0 0 0 0 0
## 231 0 0 0 0 0 0
## Elbow2l.X1 Hook2l.X1 Jab2l.X1 Kick2l.X1 Cross2l.X2 Knee2l.X2 Elbow2l.X2
## 1 0 0 0 0 0 0 0
## 2 0 0 0 0 0 0 0
## 3 0 0 0 0 0 0 0
## 4 0 0 0 0 0 0 0
## 5 0 0 0 0 0 0 0
## 6 0 0 0 0 0 0 0
## 7 0 0 0 0 0 0 0
## 8 0 0 0 0 0 0 0
## 9 0 0 0 0 0 0 0
## 10 0 0 0 0 0 0 0
## 11 0 0 0 0 0 0 0
## 12 0 0 0 0 0 0 0
## 13 0 0 0 0 0 0 0
## 14 0 0 0 0 0 0 0
## 15 0 0 0 0 0 0 0
## 16 0 0 0 0 0 0 0
## 17 0 0 0 0 0 0 0
## 18 0 0 0 0 0 0 0
## 19 0 0 0 0 0 0 0
## 20 0 0 0 0 0 0 0
## 21 0 0 0 0 0 0 0
## 22 0 0 0 0 0 0 0
## 23 0 0 0 0 0 0 0
## 24 0 0 0 0 0 0 0
## 25 0 0 0 0 0 0 0
## 26 0 0 0 0 0 0 0
## 27 0 0 0 0 0 0 0
## 28 0 0 0 0 0 0 0
## 29 0 0 0 0 0 0 0
## 30 0 0 0 0 0 0 0
## 31 0 0 0 0 0 0 0
## 32 0 0 0 0 0 0 0
## 33 0 0 0 0 0 0 0
## 34 0 0 0 0 0 0 0
## 35 0 0 0 0 0 0 0
## 36 0 0 0 0 0 0 0
## 37 0 0 0 0 0 0 0
## 38 0 0 0 0 0 0 0
## 39 0 0 0 0 0 0 0
## 40 0 0 0 0 0 0 0
## 41 0 0 0 0 0 0 0
## 42 0 0 0 0 0 0 0
## 43 0 0 0 0 0 0 0
## 44 0 0 0 0 0 0 0
## 45 0 0 0 0 0 0 0
## 46 0 0 0 0 0 0 0
## 47 0 0 0 0 0 0 0
## 48 0 0 0 0 0 0 0
## 49 0 0 0 0 0 0 0
## 50 0 0 0 0 0 0 0
## 51 0 0 0 0 0 0 0
## 52 0 0 0 0 0 0 0
## 53 0 0 0 0 0 0 0
## 54 0 0 0 0 0 0 0
## 55 0 0 0 0 0 0 0
## 56 0 0 0 0 0 0 0
## 57 0 0 0 0 0 0 0
## 58 0 0 0 0 0 0 0
## 59 0 0 0 0 0 0 0
## 60 0 0 0 0 0 0 0
## 61 0 0 0 0 0 0 0
## 62 0 0 0 0 0 0 0
## 63 0 0 0 0 0 0 0
## 64 0 0 0 0 0 0 0
## 65 0 0 0 0 0 0 0
## 66 0 0 0 0 0 0 0
## 67 0 0 0 0 0 0 0
## 68 0 0 0 0 0 0 0
## 69 0 0 0 0 0 0 0
## 70 0 0 0 0 0 0 0
## 71 0 0 0 0 0 0 0
## 72 0 0 0 0 0 0 0
## 73 0 0 0 0 0 0 0
## 74 0 0 0 0 0 0 0
## 75 0 0 0 0 0 0 0
## 76 0 0 0 0 0 0 0
## 77 0 0 0 0 0 0 0
## 78 0 0 0 0 0 0 0
## 79 0 0 0 0 0 0 0
## 80 0 0 0 0 0 0 0
## 81 0 0 0 0 0 0 0
## 82 0 0 0 0 0 0 0
## 83 0 0 0 0 0 0 0
## 84 0 0 0 0 0 0 0
## 85 0 0 0 0 0 0 0
## 86 0 0 0 0 0 0 0
## 87 0 0 0 0 0 0 0
## 88 0 0 0 0 0 0 0
## 89 0 0 0 0 0 0 0
## 90 0 0 0 0 0 0 0
## 91 0 0 0 0 0 0 0
## 92 0 0 0 0 0 0 0
## 93 0 0 0 0 0 0 0
## 94 0 0 0 0 0 0 0
## 95 0 0 0 0 0 0 0
## 96 0 0 0 0 0 0 0
## 97 0 0 0 0 0 0 0
## 98 0 0 0 0 0 0 0
## 99 0 0 0 0 0 0 0
## 100 0 0 0 0 0 0 0
## 101 0 0 0 0 0 0 0
## 102 0 0 0 0 0 0 0
## 103 0 0 0 0 0 0 0
## 104 0 0 0 0 0 0 0
## 105 0 0 0 0 0 0 0
## 106 0 0 0 0 0 0 0
## 107 0 0 0 0 0 0 0
## 108 0 0 0 0 0 0 0
## 109 0 0 0 0 0 0 0
## 110 0 0 0 0 0 0 0
## 111 0 0 0 0 0 0 0
## 112 0 0 0 0 0 0 0
## 113 0 0 0 0 0 0 0
## 114 0 0 0 0 0 0 0
## 115 0 0 0 0 0 0 0
## 116 0 0 0 0 0 0 0
## 117 0 0 0 0 0 0 0
## 118 0 0 0 0 0 0 0
## 119 0 0 0 0 0 0 0
## 120 0 0 0 0 0 0 0
## 121 0 0 0 0 0 0 0
## 122 0 0 0 0 0 0 0
## 123 0 0 0 0 0 0 0
## 124 0 0 0 0 0 0 0
## 125 0 0 0 0 0 0 0
## 126 0 0 0 0 0 0 0
## 127 0 0 0 0 0 0 0
## 128 0 0 0 0 0 0 0
## 129 0 0 0 0 0 0 0
## 130 0 0 0 0 0 0 0
## 131 0 0 0 0 0 0 0
## 132 0 0 0 0 0 0 0
## 133 0 0 0 0 0 0 0
## 134 0 0 0 0 0 0 0
## 135 0 0 0 0 0 0 0
## 136 0 0 0 0 0 0 0
## 137 0 0 0 0 0 0 0
## 138 0 0 0 0 0 0 0
## 139 0 0 0 0 0 0 0
## 140 0 0 0 0 0 0 0
## 141 0 0 0 0 0 0 0
## 142 0 0 0 0 0 0 0
## 143 0 0 0 0 0 0 0
## 144 0 0 0 0 0 0 0
## 145 0 0 0 0 0 0 0
## 146 0 0 0 0 0 0 0
## 147 0 0 0 0 0 0 0
## 148 0 0 0 0 0 0 0
## 149 0 0 0 0 0 0 0
## 150 0 0 0 0 0 0 0
## 151 0 0 0 0 0 0 0
## 152 0 0 0 0 0 0 0
## 153 0 0 0 0 0 0 0
## 154 0 0 0 0 0 0 0
## 155 0 0 0 0 0 0 0
## 156 0 0 0 0 0 0 0
## 157 0 0 0 0 0 0 0
## 158 0 0 0 0 0 0 0
## 159 0 0 0 0 0 0 0
## 160 0 0 0 0 0 0 0
## 161 0 0 0 0 0 0 0
## 162 0 0 0 0 0 0 0
## 163 0 0 0 0 0 0 0
## 164 0 0 0 0 0 0 0
## 165 0 0 0 0 0 0 0
## 166 0 0 0 0 0 0 0
## 167 0 0 0 0 0 0 0
## 168 0 0 0 0 0 0 0
## 169 0 0 0 0 0 0 0
## 170 0 0 0 0 0 0 0
## 171 0 0 0 0 0 0 0
## 172 0 0 0 0 0 0 0
## 173 0 0 0 0 0 0 0
## 174 0 0 0 0 0 0 0
## 175 1 0 0 0 0 0 0
## 176 0 0 0 0 0 0 0
## 177 0 0 0 0 0 0 0
## 178 0 0 0 0 0 0 0
## 179 0 0 0 0 0 0 0
## 180 0 0 0 0 0 0 0
## 181 0 0 0 0 0 0 0
## 182 0 0 0 0 0 0 0
## 183 0 0 0 0 0 0 0
## 184 0 0 0 0 0 0 0
## 185 0 0 0 0 0 0 0
## 186 0 0 0 0 0 0 0
## 187 0 0 0 0 0 0 0
## 188 0 0 0 0 0 0 0
## 189 0 0 0 0 0 0 0
## 190 0 0 0 0 0 0 0
## 191 0 0 0 0 0 0 0
## 192 0 0 0 0 0 0 0
## 193 0 0 0 0 0 0 0
## 194 0 0 0 0 0 0 0
## 195 0 0 0 0 0 0 0
## 196 0 0 0 0 0 0 0
## 197 0 0 0 0 0 0 0
## 198 0 0 0 0 0 0 0
## 199 0 0 0 0 0 0 0
## 200 0 0 0 0 0 0 0
## 201 0 0 0 0 0 0 0
## 202 0 0 0 0 0 0 0
## 203 0 0 0 0 0 0 0
## 204 0 0 0 0 0 0 0
## 205 0 0 0 0 0 0 0
## 206 0 0 0 0 0 0 0
## 207 0 0 0 0 0 0 0
## 208 0 0 0 0 0 0 0
## 209 0 0 0 0 0 0 0
## 210 0 0 0 0 0 0 0
## 211 0 0 0 0 0 0 0
## 212 0 0 0 0 0 0 0
## 213 0 0 0 0 0 0 0
## 214 0 0 0 0 0 0 0
## 215 0 0 0 0 0 0 0
## 216 0 0 0 0 0 0 0
## 217 0 0 0 0 0 0 0
## 218 0 0 0 0 0 0 0
## 219 0 0 0 0 0 0 0
## 220 0 0 0 0 0 0 0
## 221 0 0 0 0 0 0 0
## 222 0 0 0 0 0 0 0
## 223 0 0 0 0 0 0 0
## 224 0 0 0 0 0 0 0
## 225 0 0 0 0 0 0 0
## 226 0 0 0 0 0 0 0
## 227 0 0 0 0 0 0 0
## 228 0 0 0 0 0 0 0
## 229 0 0 0 0 0 0 0
## 230 0 0 0 0 0 0 0
## 231 0 0 0 0 0 0 0
## Hook2l.X2 Jab2l.X2 Kick2l.X2 upper2l.X1 upper2l.X2 takedown2l.X1
## 1 0 0 0 0 0 0
## 2 0 0 0 0 0 0
## 3 0 0 0 0 0 0
## 4 0 0 0 0 0 0
## 5 0 0 0 0 0 0
## 6 0 0 0 0 0 0
## 7 0 0 0 0 0 0
## 8 0 0 0 0 0 0
## 9 0 0 0 0 0 0
## 10 0 0 0 0 0 0
## 11 0 0 0 0 0 0
## 12 0 0 0 0 0 0
## 13 0 0 0 0 0 0
## 14 0 0 0 0 0 0
## 15 0 0 0 0 0 0
## 16 0 0 0 0 0 0
## 17 0 0 0 0 0 0
## 18 0 0 0 0 0 0
## 19 0 0 0 0 0 0
## 20 0 0 0 0 0 0
## 21 0 0 0 0 0 0
## 22 0 0 0 0 0 0
## 23 0 0 0 0 0 0
## 24 0 0 0 0 0 0
## 25 0 0 0 0 0 0
## 26 0 0 0 0 0 0
## 27 0 0 0 0 0 0
## 28 0 0 0 0 0 0
## 29 0 0 0 0 0 0
## 30 0 0 0 0 0 0
## 31 0 0 0 0 0 0
## 32 0 0 0 0 0 0
## 33 0 0 0 0 0 0
## 34 0 0 0 0 0 0
## 35 0 0 0 0 0 0
## 36 0 0 0 0 0 0
## 37 0 0 0 0 0 0
## 38 0 0 0 0 0 0
## 39 0 0 0 0 0 0
## 40 0 0 0 0 0 0
## 41 0 0 0 0 0 0
## 42 0 0 0 0 0 0
## 43 0 0 0 0 0 0
## 44 0 0 0 0 0 0
## 45 0 0 0 0 0 0
## 46 0 0 0 0 0 0
## 47 0 0 0 0 0 0
## 48 0 0 0 0 0 0
## 49 0 0 0 0 0 0
## 50 0 0 0 0 0 0
## 51 0 0 0 0 0 0
## 52 0 0 0 0 0 0
## 53 0 0 0 0 0 0
## 54 0 0 0 0 0 0
## 55 0 0 0 0 0 0
## 56 0 0 0 0 0 0
## 57 0 0 0 0 0 0
## 58 0 0 0 0 0 0
## 59 0 0 0 0 0 0
## 60 0 0 0 0 0 0
## 61 0 0 0 0 0 0
## 62 0 0 0 0 0 0
## 63 0 0 0 0 0 0
## 64 0 0 0 0 0 0
## 65 0 0 0 0 0 0
## 66 0 0 0 0 0 0
## 67 0 0 0 0 0 0
## 68 0 0 0 0 0 0
## 69 0 0 0 0 0 0
## 70 0 0 0 0 0 0
## 71 0 0 0 0 0 0
## 72 0 0 0 0 0 0
## 73 0 0 0 0 0 0
## 74 0 0 0 0 0 0
## 75 0 0 0 0 0 0
## 76 0 0 0 0 0 0
## 77 0 0 0 0 0 0
## 78 0 0 0 0 0 0
## 79 0 0 0 0 0 0
## 80 0 0 0 0 0 0
## 81 0 0 0 0 0 0
## 82 0 0 0 0 0 0
## 83 0 0 0 0 0 0
## 84 0 0 0 0 0 0
## 85 0 0 0 0 0 0
## 86 0 0 0 0 0 0
## 87 0 0 0 0 0 0
## 88 0 0 0 0 0 0
## 89 0 0 0 0 0 0
## 90 0 0 0 0 0 0
## 91 0 0 0 0 0 0
## 92 0 0 0 0 0 0
## 93 0 0 0 0 0 0
## 94 0 0 0 0 0 0
## 95 0 0 0 0 0 0
## 96 0 0 0 0 0 0
## 97 0 0 0 0 0 0
## 98 0 0 0 0 0 0
## 99 0 0 0 0 0 0
## 100 0 0 0 0 0 0
## 101 0 0 0 0 0 0
## 102 0 0 0 0 0 0
## 103 0 0 0 0 0 0
## 104 0 0 0 0 0 0
## 105 0 0 0 0 0 0
## 106 0 0 0 0 0 0
## 107 0 0 0 0 0 0
## 108 0 0 0 0 0 0
## 109 0 0 0 0 0 0
## 110 0 0 0 0 0 0
## 111 0 0 0 0 0 0
## 112 0 0 0 0 0 0
## 113 0 0 0 0 0 0
## 114 0 0 0 0 0 0
## 115 0 0 0 0 0 0
## 116 0 0 0 0 0 0
## 117 0 0 0 0 0 0
## 118 0 0 0 0 0 0
## 119 0 0 0 0 0 0
## 120 0 0 0 0 0 0
## 121 0 0 0 0 0 0
## 122 0 0 0 0 0 0
## 123 0 0 0 0 0 0
## 124 0 0 0 0 0 0
## 125 0 0 0 0 0 0
## 126 0 0 0 0 0 0
## 127 0 0 0 0 0 0
## 128 0 0 0 0 0 0
## 129 0 0 0 0 0 0
## 130 0 0 0 0 0 0
## 131 0 0 0 0 0 0
## 132 0 0 0 0 0 0
## 133 0 0 0 0 0 0
## 134 0 0 0 0 0 0
## 135 0 0 0 0 0 0
## 136 0 0 0 0 0 0
## 137 0 0 0 0 0 0
## 138 0 0 0 0 0 0
## 139 0 0 0 0 0 0
## 140 0 0 0 0 0 0
## 141 0 0 0 0 0 0
## 142 0 0 0 0 0 0
## 143 0 0 0 0 0 0
## 144 0 0 0 0 0 0
## 145 0 0 0 0 0 0
## 146 0 0 0 0 0 0
## 147 0 0 0 0 0 0
## 148 0 0 0 0 0 0
## 149 0 0 0 0 0 0
## 150 0 0 0 0 0 0
## 151 0 0 0 0 0 0
## 152 0 0 0 0 0 0
## 153 0 0 0 0 0 0
## 154 0 0 0 0 0 0
## 155 0 0 0 0 0 0
## 156 0 0 0 0 0 0
## 157 0 0 0 0 0 0
## 158 0 0 0 0 0 0
## 159 0 0 0 0 0 0
## 160 0 0 0 0 0 0
## 161 0 0 0 0 0 0
## 162 0 0 0 0 0 0
## 163 0 0 0 0 0 0
## 164 0 0 0 0 0 0
## 165 0 0 0 0 0 0
## 166 0 0 0 0 0 0
## 167 0 0 0 0 0 0
## 168 0 0 0 0 0 0
## 169 0 0 0 0 0 0
## 170 0 0 0 0 0 0
## 171 0 0 0 0 0 0
## 172 0 0 0 0 0 0
## 173 0 0 0 0 0 0
## 174 0 0 0 0 0 0
## 175 0 0 0 0 0 0
## 176 0 0 0 0 0 0
## 177 0 0 0 0 0 0
## 178 0 0 0 0 0 0
## 179 0 0 0 0 0 0
## 180 0 0 0 0 0 0
## 181 0 0 0 0 0 0
## 182 0 0 0 0 0 0
## 183 0 0 0 0 0 0
## 184 0 0 0 0 0 0
## 185 0 0 0 0 0 0
## 186 0 0 0 0 0 0
## 187 0 0 0 0 0 0
## 188 0 0 0 0 0 0
## 189 0 0 0 0 0 0
## 190 0 0 0 0 0 0
## 191 0 0 0 0 0 0
## 192 0 0 0 0 0 0
## 193 0 0 0 0 0 0
## 194 0 0 0 0 0 0
## 195 0 0 0 0 0 0
## 196 0 0 0 0 0 0
## 197 0 0 0 0 0 0
## 198 0 0 0 0 0 0
## 199 0 0 0 0 0 0
## 200 0 0 0 0 0 0
## 201 0 0 0 0 0 0
## 202 0 0 0 0 0 0
## 203 0 0 0 0 0 0
## 204 0 0 0 0 0 0
## 205 0 0 0 0 0 0
## 206 0 0 0 0 0 0
## 207 0 0 0 0 0 0
## 208 0 0 0 0 0 0
## 209 0 0 0 0 0 0
## 210 0 0 0 0 0 0
## 211 0 0 0 0 0 0
## 212 0 0 0 0 0 0
## 213 0 0 0 0 0 0
## 214 0 0 0 0 0 0
## 215 0 0 0 0 0 0
## 216 0 0 0 0 0 0
## 217 0 0 0 0 0 0
## 218 0 0 0 0 0 0
## 219 0 0 0 0 0 0
## 220 0 0 0 0 0 0
## 221 0 0 0 0 0 0
## 222 0 0 0 0 0 0
## 223 0 0 0 0 0 0
## 224 0 0 0 0 0 0
## 225 0 0 0 0 0 0
## 226 0 0 0 0 0 0
## 227 0 0 0 0 0 0
## 228 0 0 0 0 0 0
## 229 0 0 0 0 0 0
## 230 0 0 0 0 0 0
## 231 0 0 0 0 0 0
## takedown2l.X2 hammer2l.X1 hammer2l.X2 Cross3l.X1 Knee3l.X1 Elbow3l.X1
## 1 0 0 0 0 0 0
## 2 0 0 0 0 0 0
## 3 0 0 0 0 0 0
## 4 0 0 0 0 0 0
## 5 0 0 0 0 0 0
## 6 0 0 0 0 0 0
## 7 0 0 0 0 0 0
## 8 0 0 0 0 0 0
## 9 0 0 0 0 0 0
## 10 0 0 0 0 0 0
## 11 0 0 0 0 0 0
## 12 0 0 0 0 0 0
## 13 0 0 0 0 0 0
## 14 0 0 0 0 0 0
## 15 0 0 0 0 0 0
## 16 0 0 0 0 0 0
## 17 0 0 0 0 0 0
## 18 0 0 0 0 0 0
## 19 0 0 0 0 0 0
## 20 0 0 0 0 0 0
## 21 0 0 0 0 0 0
## 22 0 0 0 0 0 0
## 23 0 0 0 0 0 0
## 24 0 0 0 0 0 0
## 25 0 0 0 0 0 0
## 26 0 0 0 0 0 0
## 27 0 0 0 0 0 0
## 28 0 0 0 0 0 0
## 29 0 0 0 0 0 0
## 30 0 0 0 0 0 0
## 31 0 0 0 0 0 0
## 32 0 0 0 0 0 0
## 33 0 0 0 0 0 0
## 34 0 0 0 0 0 0
## 35 0 0 0 0 0 0
## 36 0 0 0 0 0 0
## 37 0 0 0 0 0 0
## 38 0 0 0 0 0 0
## 39 0 0 0 0 0 0
## 40 0 0 0 0 0 0
## 41 0 0 0 0 0 0
## 42 0 0 0 0 0 0
## 43 0 0 0 0 0 0
## 44 0 0 0 0 0 0
## 45 0 0 0 0 0 0
## 46 0 0 0 0 0 0
## 47 0 0 0 0 0 0
## 48 0 0 0 0 0 0
## 49 0 0 0 0 0 0
## 50 0 0 0 0 0 0
## 51 0 0 0 0 0 0
## 52 0 0 0 0 0 0
## 53 0 0 0 0 0 0
## 54 0 0 0 0 0 0
## 55 0 0 0 0 0 0
## 56 0 0 0 0 0 0
## 57 0 0 0 0 0 0
## 58 0 0 0 0 0 0
## 59 0 0 0 0 0 0
## 60 0 0 0 0 0 0
## 61 0 0 0 0 0 0
## 62 0 0 0 0 0 0
## 63 0 0 0 0 0 0
## 64 0 0 0 0 0 0
## 65 0 0 0 0 0 0
## 66 0 0 0 0 0 0
## 67 0 0 0 0 0 0
## 68 0 0 0 0 0 0
## 69 0 0 0 0 0 0
## 70 0 0 0 0 0 0
## 71 0 0 0 0 0 0
## 72 0 0 0 0 0 0
## 73 0 0 0 0 0 0
## 74 0 0 0 0 0 0
## 75 0 0 0 0 0 0
## 76 0 0 0 0 0 0
## 77 0 0 0 0 0 0
## 78 0 0 0 0 0 0
## 79 0 0 0 0 0 0
## 80 0 0 0 0 0 0
## 81 0 0 0 0 0 0
## 82 0 0 0 0 0 0
## 83 0 0 0 0 0 0
## 84 0 0 0 0 0 0
## 85 0 0 0 0 0 0
## 86 0 0 0 1 0 0
## 87 0 0 0 0 0 0
## 88 0 0 0 0 0 0
## 89 0 0 0 0 0 0
## 90 0 0 0 0 0 0
## 91 0 0 0 0 0 0
## 92 0 0 0 0 0 0
## 93 0 0 0 0 0 0
## 94 0 0 0 0 0 0
## 95 0 0 0 0 0 0
## 96 0 0 0 0 0 0
## 97 0 0 0 0 0 0
## 98 0 0 0 0 0 0
## 99 0 0 0 0 0 0
## 100 0 0 0 0 0 0
## 101 0 0 0 0 0 0
## 102 0 0 0 0 0 0
## 103 0 0 0 0 0 0
## 104 0 0 0 0 0 0
## 105 0 0 0 0 0 0
## 106 0 0 0 0 0 0
## 107 0 0 0 0 0 0
## 108 0 0 0 0 0 0
## 109 0 0 0 0 0 0
## 110 0 0 0 0 0 0
## 111 0 0 0 0 0 0
## 112 0 0 0 0 0 0
## 113 0 0 0 0 0 0
## 114 0 0 0 0 0 0
## 115 0 0 0 0 0 0
## 116 0 0 0 0 0 0
## 117 0 0 0 0 0 0
## 118 0 0 0 0 0 0
## 119 0 0 0 0 0 0
## 120 0 0 0 0 0 0
## 121 0 0 0 0 0 0
## 122 0 0 0 0 0 0
## 123 0 0 0 0 0 0
## 124 0 0 0 0 0 0
## 125 0 0 0 0 0 0
## 126 0 0 0 0 0 0
## 127 0 0 0 0 0 0
## 128 0 0 0 0 0 0
## 129 0 0 0 0 0 0
## 130 0 0 0 0 0 0
## 131 0 0 0 0 0 0
## 132 0 0 0 0 0 0
## 133 0 0 0 0 0 0
## 134 0 0 0 0 0 0
## 135 0 0 0 0 0 0
## 136 0 0 0 0 0 0
## 137 0 0 0 0 0 0
## 138 0 0 0 0 0 0
## 139 0 0 0 0 0 0
## 140 0 0 0 0 0 0
## 141 0 0 0 0 0 0
## 142 0 0 0 0 0 0
## 143 0 0 0 0 0 0
## 144 0 0 0 0 0 0
## 145 0 0 0 0 0 0
## 146 0 0 0 0 0 0
## 147 0 0 0 0 0 0
## 148 0 0 0 0 0 0
## 149 0 0 0 0 0 0
## 150 0 0 0 0 0 0
## 151 0 0 0 0 0 0
## 152 0 0 0 0 0 0
## 153 0 0 0 0 0 0
## 154 0 0 0 0 0 0
## 155 0 0 0 0 0 0
## 156 0 0 0 0 0 0
## 157 0 0 0 0 0 0
## 158 0 0 0 0 0 0
## 159 0 0 0 0 0 0
## 160 0 0 0 0 0 0
## 161 0 0 0 1 0 0
## 162 0 0 0 0 0 0
## 163 0 0 0 0 0 0
## 164 0 0 0 0 0 0
## 165 0 0 0 0 0 0
## 166 0 0 0 0 0 0
## 167 0 0 0 0 0 0
## 168 0 0 0 0 0 0
## 169 0 0 0 0 0 0
## 170 0 0 0 0 0 0
## 171 0 0 0 0 0 0
## 172 0 0 0 0 0 0
## 173 0 0 0 0 0 0
## 174 0 0 0 0 0 0
## 175 0 0 0 0 0 0
## 176 0 0 0 0 0 0
## 177 0 0 0 0 0 0
## 178 0 0 0 0 0 0
## 179 0 0 0 0 0 0
## 180 0 0 0 0 0 0
## 181 0 0 0 0 0 0
## 182 0 0 0 0 0 0
## 183 0 0 0 0 0 0
## 184 0 0 0 0 0 0
## 185 0 0 0 0 0 0
## 186 0 0 0 0 0 0
## 187 0 0 0 0 0 0
## 188 0 0 0 0 0 0
## 189 0 0 0 0 0 0
## 190 0 0 0 0 0 0
## 191 0 0 0 0 0 0
## 192 0 0 0 0 0 0
## 193 0 0 0 0 0 0
## 194 0 0 0 0 0 0
## 195 0 0 0 0 0 0
## 196 0 0 0 0 0 0
## 197 0 0 0 0 0 0
## 198 0 0 0 0 0 0
## 199 0 0 0 0 0 0
## 200 0 0 0 0 0 0
## 201 0 0 0 0 0 0
## 202 0 0 0 0 0 0
## 203 0 0 0 0 0 0
## 204 0 0 0 0 0 0
## 205 0 0 0 0 0 0
## 206 0 0 0 0 0 0
## 207 0 0 0 0 0 0
## 208 0 0 0 0 0 0
## 209 0 0 0 0 0 0
## 210 0 0 0 0 0 0
## 211 0 0 0 0 0 0
## 212 0 0 0 0 0 0
## 213 0 0 0 0 0 0
## 214 0 0 0 0 0 0
## 215 0 0 0 0 0 0
## 216 0 0 0 0 0 0
## 217 0 0 0 0 0 0
## 218 0 0 0 0 0 0
## 219 0 0 0 0 0 0
## 220 0 0 0 0 0 0
## 221 0 0 0 0 0 0
## 222 0 0 0 0 0 0
## 223 0 0 0 0 0 0
## 224 0 0 0 0 0 0
## 225 0 0 0 0 0 0
## 226 0 0 0 0 0 0
## 227 0 0 0 0 0 0
## 228 0 0 0 0 0 0
## 229 0 0 0 0 0 0
## 230 0 0 0 0 0 0
## 231 0 0 0 0 0 0
## Hook3l.X1 Jab3l.X1 Kick3l.X1 Cross3l.X2 Knee3l.X2 Elbow3l.X2 Hook3l.X2
## 1 0 0 0 0 0 0 0
## 2 0 0 0 0 0 0 0
## 3 0 0 0 0 0 0 0
## 4 0 0 0 0 0 0 0
## 5 0 0 0 0 0 0 0
## 6 0 0 0 0 0 0 0
## 7 0 0 0 0 0 0 0
## 8 0 0 0 0 0 0 0
## 9 0 0 0 0 0 0 0
## 10 0 0 0 0 0 0 0
## 11 0 0 0 0 0 0 0
## 12 0 0 0 0 0 0 0
## 13 0 0 0 0 0 0 0
## 14 0 0 0 0 0 0 0
## 15 0 0 0 0 0 0 0
## 16 0 0 0 0 0 0 0
## 17 0 0 0 0 0 0 0
## 18 0 0 0 0 0 0 0
## 19 0 0 0 0 0 0 0
## 20 0 0 0 0 0 0 0
## 21 0 0 0 0 0 0 0
## 22 0 0 0 0 0 0 0
## 23 0 0 0 0 0 0 0
## 24 0 0 0 0 0 0 0
## 25 0 0 0 0 0 0 0
## 26 0 0 0 0 0 0 0
## 27 0 0 0 0 0 0 0
## 28 0 0 0 0 0 0 0
## 29 0 0 0 0 0 0 0
## 30 0 0 0 0 0 0 0
## 31 0 0 0 0 0 0 0
## 32 0 0 0 0 0 0 0
## 33 0 0 0 0 0 0 0
## 34 0 0 0 0 0 0 0
## 35 0 0 0 0 0 0 0
## 36 0 0 0 0 0 0 0
## 37 0 0 0 0 0 0 0
## 38 0 0 0 0 0 0 0
## 39 0 0 0 0 0 0 0
## 40 0 0 0 0 0 0 0
## 41 0 0 0 0 0 0 0
## 42 0 0 0 0 0 0 0
## 43 0 0 0 0 0 0 0
## 44 0 0 0 0 0 0 0
## 45 0 0 0 0 0 0 0
## 46 0 0 0 0 0 0 0
## 47 0 0 0 0 0 0 0
## 48 0 0 0 0 0 0 0
## 49 0 0 0 0 0 0 0
## 50 0 0 0 0 0 0 0
## 51 0 0 0 0 0 0 0
## 52 0 0 0 0 0 0 0
## 53 0 0 0 0 0 0 0
## 54 0 0 0 0 0 0 0
## 55 0 0 0 0 0 0 0
## 56 0 0 0 0 0 0 0
## 57 0 0 0 0 0 0 0
## 58 0 0 0 0 0 0 0
## 59 0 0 0 0 0 0 0
## 60 0 0 0 0 0 0 0
## 61 0 0 0 0 0 0 0
## 62 0 0 0 0 0 0 0
## 63 0 0 0 0 0 0 0
## 64 0 0 0 0 0 0 0
## 65 0 0 0 0 0 0 0
## 66 0 0 0 0 0 0 0
## 67 0 0 0 0 0 0 0
## 68 0 0 0 0 0 0 0
## 69 0 0 0 0 0 0 0
## 70 0 0 0 0 0 0 0
## 71 0 0 0 0 0 0 0
## 72 0 0 0 0 0 0 0
## 73 0 0 0 0 0 0 0
## 74 0 0 0 0 0 0 0
## 75 0 0 0 0 0 0 0
## 76 0 0 0 0 0 0 0
## 77 0 0 0 0 0 0 0
## 78 0 0 0 0 0 0 0
## 79 0 0 0 0 0 0 0
## 80 0 0 0 0 0 0 0
## 81 0 0 0 0 0 0 0
## 82 0 0 0 0 0 0 0
## 83 0 0 0 0 0 0 0
## 84 0 0 0 0 0 0 0
## 85 0 0 0 0 0 0 0
## 86 0 0 0 0 0 0 0
## 87 0 0 0 0 0 0 0
## 88 0 0 0 0 0 0 0
## 89 0 0 0 0 0 0 0
## 90 0 0 0 0 0 0 0
## 91 0 0 0 0 0 0 0
## 92 0 0 0 0 0 0 0
## 93 0 0 0 0 0 0 0
## 94 0 0 0 0 0 0 0
## 95 0 0 0 0 0 0 0
## 96 0 0 0 0 0 0 0
## 97 0 0 0 0 0 0 0
## 98 0 0 0 0 0 0 0
## 99 0 0 0 0 0 0 0
## 100 0 0 0 0 0 0 0
## 101 0 0 0 0 0 0 0
## 102 0 0 0 0 0 0 0
## 103 0 0 0 0 0 0 0
## 104 0 0 0 0 0 0 0
## 105 0 0 0 0 0 0 0
## 106 0 0 0 0 0 0 0
## 107 0 0 0 0 0 0 0
## 108 0 0 0 0 0 0 0
## 109 0 0 0 0 0 0 0
## 110 0 0 0 0 0 0 0
## 111 0 0 0 0 0 0 0
## 112 0 0 0 0 0 0 0
## 113 0 0 0 0 0 0 0
## 114 0 0 0 0 0 0 0
## 115 0 0 0 0 0 0 0
## 116 0 0 0 0 0 0 0
## 117 0 0 0 0 0 0 0
## 118 0 0 0 0 0 0 0
## 119 0 0 0 0 0 0 0
## 120 0 0 0 0 0 0 0
## 121 0 0 0 0 0 0 0
## 122 0 0 0 0 0 0 0
## 123 0 0 0 0 0 0 0
## 124 0 0 0 0 0 0 0
## 125 0 0 0 0 0 0 0
## 126 0 0 0 0 0 0 0
## 127 0 0 0 0 0 0 0
## 128 0 0 0 0 0 0 0
## 129 0 0 0 0 0 0 0
## 130 0 0 0 0 0 0 0
## 131 0 0 0 0 0 0 0
## 132 0 0 0 0 0 0 0
## 133 0 0 0 0 0 0 0
## 134 0 0 0 0 0 0 0
## 135 0 0 0 0 0 0 0
## 136 0 0 0 0 0 0 0
## 137 0 0 0 0 0 0 0
## 138 0 0 0 0 0 0 0
## 139 0 0 0 0 0 0 0
## 140 0 0 0 0 0 0 0
## 141 0 0 0 0 0 0 0
## 142 0 0 0 0 0 0 0
## 143 0 0 0 0 0 0 0
## 144 0 0 0 0 0 0 0
## 145 0 0 0 0 0 0 0
## 146 0 0 0 0 0 0 0
## 147 0 0 0 0 0 0 0
## 148 0 0 0 0 0 0 0
## 149 0 0 0 0 0 0 0
## 150 0 0 0 0 0 0 0
## 151 0 0 0 0 0 0 0
## 152 0 0 0 0 0 0 0
## 153 0 0 0 0 0 0 0
## 154 0 0 0 0 0 0 0
## 155 0 0 0 0 0 0 0
## 156 0 0 0 0 0 0 0
## 157 0 0 0 0 0 0 0
## 158 0 0 0 0 0 0 0
## 159 0 0 0 0 0 0 0
## 160 0 0 0 0 0 0 0
## 161 0 0 0 0 0 0 0
## 162 0 0 0 0 0 0 0
## 163 0 0 0 0 0 0 0
## 164 0 0 0 0 0 0 0
## 165 0 0 0 0 0 0 0
## 166 0 0 0 0 0 0 0
## 167 0 0 0 0 0 0 0
## 168 0 0 0 0 0 0 0
## 169 0 0 0 0 0 0 0
## 170 0 0 0 0 0 0 0
## 171 0 0 0 0 0 0 0
## 172 0 0 0 0 0 0 0
## 173 0 0 0 0 0 0 0
## 174 0 0 0 0 0 0 0
## 175 0 0 0 0 0 0 0
## 176 0 0 0 0 0 0 0
## 177 0 0 0 0 0 0 0
## 178 0 0 0 0 0 0 0
## 179 0 0 0 0 0 0 0
## 180 0 0 0 0 0 0 0
## 181 0 0 0 0 0 0 0
## 182 0 0 0 0 0 0 0
## 183 0 0 0 0 0 0 0
## 184 0 0 0 0 0 0 0
## 185 0 0 0 0 0 0 0
## 186 0 0 0 0 0 0 0
## 187 0 0 0 0 0 0 0
## 188 0 0 0 0 0 0 0
## 189 0 0 0 0 0 0 0
## 190 0 0 0 0 0 0 0
## 191 0 0 0 0 0 0 0
## 192 0 0 0 0 0 0 0
## 193 0 0 0 0 0 0 0
## 194 0 0 0 0 0 0 0
## 195 0 0 0 0 0 0 0
## 196 0 0 0 0 0 0 0
## 197 0 0 0 0 0 0 0
## 198 0 0 0 0 0 0 0
## 199 0 0 0 0 0 0 0
## 200 0 0 0 0 0 0 0
## 201 0 0 0 0 0 0 0
## 202 0 0 0 0 0 0 0
## 203 0 0 0 0 0 0 0
## 204 0 0 0 0 0 0 0
## 205 0 0 0 0 0 0 0
## 206 0 0 0 0 0 0 0
## 207 0 0 0 0 0 0 0
## 208 0 0 0 0 0 0 0
## 209 0 0 0 0 0 0 0
## 210 0 0 0 0 0 0 0
## 211 0 0 0 0 0 0 0
## 212 0 0 0 0 0 0 0
## 213 0 0 0 0 0 0 0
## 214 0 0 0 0 0 0 0
## 215 0 0 0 0 0 0 0
## 216 0 0 0 0 0 0 0
## 217 0 0 0 0 0 0 0
## 218 0 0 0 0 0 0 0
## 219 0 0 0 0 0 0 0
## 220 0 0 0 0 0 0 0
## 221 0 0 0 0 0 0 0
## 222 0 0 0 0 0 0 0
## 223 0 0 0 0 0 0 0
## 224 0 0 0 0 0 0 0
## 225 0 0 0 0 0 0 0
## 226 0 0 0 0 0 0 0
## 227 0 0 0 0 0 0 0
## 228 0 0 0 0 0 0 0
## 229 0 0 0 0 0 0 0
## 230 0 0 0 0 0 0 0
## 231 0 0 0 0 0 0 0
## Jab3l.X2 Kick3l.X2 upper3l.X1 upper3l.X2 takedown3l.X1 takedown3l.X2
## 1 0 0 0 0 0 0
## 2 0 0 0 0 0 0
## 3 0 0 0 0 0 0
## 4 0 0 0 0 0 0
## 5 0 0 0 0 0 0
## 6 0 0 0 0 0 0
## 7 0 0 0 0 0 0
## 8 0 0 0 0 0 0
## 9 0 0 0 0 0 0
## 10 0 0 0 0 0 0
## 11 0 0 0 0 0 0
## 12 0 0 0 0 0 0
## 13 0 0 0 0 0 0
## 14 0 0 0 0 0 0
## 15 0 0 0 0 0 0
## 16 0 0 0 0 0 0
## 17 0 0 0 0 0 0
## 18 0 0 0 0 0 0
## 19 0 0 0 0 0 0
## 20 0 0 0 0 0 0
## 21 0 0 0 0 0 0
## 22 0 0 0 0 0 0
## 23 0 0 0 0 0 0
## 24 0 0 0 0 0 0
## 25 0 0 0 0 0 0
## 26 0 0 0 0 0 0
## 27 0 0 0 0 0 0
## 28 0 0 0 0 0 0
## 29 0 0 0 0 0 0
## 30 0 0 0 0 0 0
## 31 0 0 0 0 0 0
## 32 0 0 0 0 0 0
## 33 0 0 0 0 0 0
## 34 0 0 0 0 0 0
## 35 0 0 0 0 0 0
## 36 0 0 0 0 0 0
## 37 0 0 0 0 0 0
## 38 0 0 0 0 0 0
## 39 0 0 0 0 0 0
## 40 0 0 0 0 0 0
## 41 0 0 0 0 0 0
## 42 0 0 0 0 0 0
## 43 0 0 0 0 0 0
## 44 0 0 0 0 0 0
## 45 0 0 0 0 0 0
## 46 0 0 0 0 0 0
## 47 0 0 0 0 0 0
## 48 0 0 0 0 0 0
## 49 0 0 0 0 0 0
## 50 0 0 0 0 0 0
## 51 0 0 0 0 0 0
## 52 0 0 0 0 0 0
## 53 0 0 0 0 0 0
## 54 0 0 0 0 0 0
## 55 0 0 0 0 0 0
## 56 0 0 0 0 0 0
## 57 0 0 0 0 0 0
## 58 0 0 0 0 0 0
## 59 0 0 0 0 0 0
## 60 0 0 0 0 0 0
## 61 0 0 0 0 0 0
## 62 0 0 0 0 0 0
## 63 0 0 0 0 0 0
## 64 0 0 0 0 0 0
## 65 0 0 0 0 0 0
## 66 0 0 0 0 0 0
## 67 0 0 0 0 0 0
## 68 0 0 0 0 0 0
## 69 0 0 0 0 0 0
## 70 0 0 0 0 0 0
## 71 0 0 0 0 0 0
## 72 0 0 0 0 0 0
## 73 0 0 0 0 0 0
## 74 0 0 0 0 0 0
## 75 0 0 0 0 0 0
## 76 0 0 0 0 0 0
## 77 0 0 0 0 0 0
## 78 0 0 0 0 0 0
## 79 0 0 0 0 0 0
## 80 0 0 0 0 0 0
## 81 0 0 0 0 0 0
## 82 0 0 0 0 0 0
## 83 0 0 0 0 0 0
## 84 0 0 0 0 0 0
## 85 0 0 0 0 0 0
## 86 0 0 0 0 0 0
## 87 0 0 0 0 0 0
## 88 0 0 0 0 0 0
## 89 0 0 0 0 0 0
## 90 0 0 0 0 0 0
## 91 0 0 0 0 0 0
## 92 0 0 0 0 0 0
## 93 0 0 0 0 0 0
## 94 0 0 0 0 0 0
## 95 0 0 0 0 0 0
## 96 0 0 0 0 0 0
## 97 0 0 0 0 0 0
## 98 0 0 0 0 0 0
## 99 0 0 0 0 0 0
## 100 0 0 0 0 0 0
## 101 0 0 0 0 0 0
## 102 0 0 0 0 0 0
## 103 0 0 0 0 0 0
## 104 0 0 0 0 0 0
## 105 0 0 0 0 0 0
## 106 0 0 0 0 0 0
## 107 0 0 0 0 0 0
## 108 0 0 0 0 0 0
## 109 0 0 0 0 0 0
## 110 0 0 0 0 0 0
## 111 0 0 0 0 0 0
## 112 0 0 0 0 0 0
## 113 0 0 0 0 0 0
## 114 0 0 0 0 0 0
## 115 0 0 0 0 0 0
## 116 0 0 0 0 0 0
## 117 0 0 0 0 0 0
## 118 0 0 0 0 0 0
## 119 0 0 0 0 0 0
## 120 0 0 0 0 0 0
## 121 0 0 0 0 0 0
## 122 0 0 0 0 0 0
## 123 0 0 0 0 0 0
## 124 0 0 0 0 0 0
## 125 0 0 0 0 0 0
## 126 0 0 0 0 0 0
## 127 0 0 0 0 0 0
## 128 0 0 0 0 0 0
## 129 0 0 0 0 0 0
## 130 0 0 0 0 0 0
## 131 0 0 0 0 0 0
## 132 0 0 0 0 0 0
## 133 0 0 0 0 0 0
## 134 0 0 0 0 0 0
## 135 0 0 0 0 0 0
## 136 0 0 0 0 0 0
## 137 0 0 0 0 0 0
## 138 0 0 0 0 0 0
## 139 0 0 0 0 0 0
## 140 0 0 0 0 0 0
## 141 0 0 0 0 0 0
## 142 0 0 0 0 0 0
## 143 0 0 0 0 0 0
## 144 0 0 0 0 0 0
## 145 0 0 0 0 0 0
## 146 0 0 0 0 0 0
## 147 0 0 0 0 0 0
## 148 0 0 0 0 0 0
## 149 0 0 0 0 0 0
## 150 0 0 0 0 0 0
## 151 0 0 0 0 0 0
## 152 0 0 0 0 0 0
## 153 0 0 0 0 0 0
## 154 0 0 0 0 0 0
## 155 0 0 0 0 0 0
## 156 0 0 0 0 0 0
## 157 0 0 0 0 0 0
## 158 0 0 0 0 0 0
## 159 0 0 0 0 0 0
## 160 0 0 0 0 0 0
## 161 0 0 0 0 0 0
## 162 0 0 0 0 0 0
## 163 0 0 0 0 0 0
## 164 0 0 0 0 0 0
## 165 0 0 0 0 0 0
## 166 0 0 0 0 0 0
## 167 0 0 0 0 0 0
## 168 0 0 0 0 0 0
## 169 0 0 0 0 0 0
## 170 0 0 0 0 0 0
## 171 0 0 0 0 0 0
## 172 0 0 0 0 0 0
## 173 0 0 0 0 0 0
## 174 0 0 0 0 0 0
## 175 0 0 0 0 0 0
## 176 0 0 0 0 0 0
## 177 0 0 0 0 0 0
## 178 0 0 0 0 0 0
## 179 0 0 0 0 0 0
## 180 0 0 0 0 0 0
## 181 0 0 0 0 0 0
## 182 0 0 0 0 0 0
## 183 0 0 0 0 0 0
## 184 0 0 0 0 0 0
## 185 0 0 0 0 0 0
## 186 0 0 0 0 0 0
## 187 0 0 0 0 0 0
## 188 0 0 0 0 0 0
## 189 0 0 0 0 0 0
## 190 0 0 0 0 0 0
## 191 0 0 0 0 0 0
## 192 0 0 0 0 0 0
## 193 0 0 0 0 0 0
## 194 0 0 0 0 0 0
## 195 0 0 0 0 0 0
## 196 0 0 0 0 0 0
## 197 0 0 0 0 0 0
## 198 0 0 0 0 0 0
## 199 0 0 0 0 0 0
## 200 0 0 0 0 0 0
## 201 0 0 0 0 0 0
## 202 0 0 0 0 0 0
## 203 0 0 0 0 0 0
## 204 0 0 0 0 0 0
## 205 0 0 0 0 0 0
## 206 0 0 0 0 0 0
## 207 0 0 0 0 0 0
## 208 0 0 0 0 0 0
## 209 0 0 0 0 0 0
## 210 0 0 0 0 0 0
## 211 0 0 0 0 0 0
## 212 0 0 0 0 0 0
## 213 0 0 0 0 0 0
## 214 0 0 0 0 0 0
## 215 0 0 0 0 0 0
## 216 0 0 0 0 0 0
## 217 0 0 0 0 0 0
## 218 0 0 0 0 0 0
## 219 0 0 0 0 0 0
## 220 0 0 0 0 0 0
## 221 0 0 0 0 0 0
## 222 0 0 0 0 0 0
## 223 0 0 0 0 0 0
## 224 0 0 0 0 0 0
## 225 0 0 0 0 0 0
## 226 0 0 0 0 0 0
## 227 0 0 0 0 0 0
## 228 0 0 0 0 0 0
## 229 0 0 0 0 0 0
## 230 0 0 0 0 0 0
## 231 0 0 0 0 0 0
## hammer3l.X1 hammer3l.X2 Crossm.X1 Kneem.X1 Elbowm.X1 Hookm.X1 Jabm.X1
## 1 0 0 0 0 0 0 0
## 2 0 0 0 0 0 0 1
## 3 0 0 0 0 0 0 0
## 4 0 0 0 0 0 0 0
## 5 0 0 0 0 0 0 0
## 6 0 0 0 0 0 0 1
## 7 0 0 0 0 0 0 0
## 8 0 0 0 0 0 0 0
## 9 0 0 0 0 0 0 0
## 10 0 0 0 0 0 0 0
## 11 0 0 0 0 0 0 0
## 12 0 0 1 0 0 0 0
## 13 0 0 0 0 0 0 0
## 14 0 0 0 0 0 0 0
## 15 0 0 0 0 0 0 0
## 16 0 0 0 0 0 0 1
## 17 0 0 0 0 0 0 1
## 18 0 0 0 0 0 0 1
## 19 0 0 0 0 0 0 0
## 20 0 0 0 0 0 0 0
## 21 0 0 0 0 0 0 0
## 22 0 0 0 0 0 0 0
## 23 0 0 0 0 0 0 0
## 24 0 0 0 0 0 0 0
## 25 0 0 0 0 0 0 0
## 26 0 0 0 0 0 0 0
## 27 0 0 0 0 0 0 0
## 28 0 0 0 0 0 0 0
## 29 0 0 0 0 0 0 0
## 30 0 0 0 0 0 0 0
## 31 0 0 0 0 0 0 0
## 32 0 0 0 1 0 1 0
## 33 0 0 0 0 0 0 0
## 34 0 0 0 0 0 0 0
## 35 0 0 0 0 0 0 0
## 36 0 0 0 0 0 0 0
## 37 0 0 0 0 0 0 0
## 38 0 0 0 0 0 0 0
## 39 0 0 0 0 0 0 0
## 40 0 0 0 0 0 0 0
## 41 0 0 0 0 0 0 0
## 42 0 0 0 0 0 0 0
## 43 0 0 0 0 0 0 0
## 44 0 0 0 0 0 0 0
## 45 0 0 0 0 0 0 0
## 46 0 0 0 0 0 0 0
## 47 0 0 0 0 0 0 0
## 48 0 0 0 0 0 0 0
## 49 0 0 0 0 0 0 0
## 50 0 0 0 0 0 0 0
## 51 0 0 0 0 0 0 0
## 52 0 0 0 0 0 0 0
## 53 0 0 0 0 0 0 0
## 54 0 0 0 0 0 0 0
## 55 0 0 0 0 0 0 0
## 56 0 0 0 0 0 0 0
## 57 0 0 0 0 0 0 0
## 58 0 0 0 0 0 0 0
## 59 0 0 0 0 0 0 0
## 60 0 0 0 0 0 0 0
## 61 0 0 0 0 0 0 0
## 62 0 0 0 0 0 0 0
## 63 0 0 0 0 0 0 0
## 64 0 0 0 0 0 0 0
## 65 0 0 0 0 0 0 0
## 66 0 0 0 0 0 0 0
## 67 0 0 0 0 0 0 0
## 68 0 0 0 0 0 0 0
## 69 0 0 0 0 0 0 0
## 70 0 0 0 0 0 0 0
## 71 0 0 0 0 0 0 0
## 72 0 0 0 0 0 0 0
## 73 0 0 0 0 0 0 0
## 74 0 0 0 0 0 0 0
## 75 0 0 0 0 0 0 0
## 76 0 0 0 0 0 0 0
## 77 0 0 0 0 0 0 0
## 78 0 0 0 0 0 0 0
## 79 0 0 0 0 0 0 0
## 80 0 0 0 0 0 0 0
## 81 0 0 0 0 0 0 0
## 82 0 0 0 0 0 0 0
## 83 0 0 0 0 0 0 0
## 84 0 0 0 0 0 0 0
## 85 0 0 0 0 0 0 0
## 86 0 0 0 0 0 0 0
## 87 0 0 0 0 0 0 0
## 88 0 0 0 0 0 0 0
## 89 0 0 0 0 0 0 0
## 90 0 0 0 0 0 0 0
## 91 0 0 0 0 0 0 0
## 92 0 0 0 0 0 0 0
## 93 0 0 0 0 0 0 0
## 94 0 0 0 0 0 0 0
## 95 0 0 0 0 0 0 0
## 96 0 0 0 0 0 0 0
## 97 0 0 0 0 0 0 0
## 98 0 0 0 0 0 0 0
## 99 0 0 0 0 0 0 0
## 100 0 0 0 0 0 0 0
## 101 0 0 0 0 0 0 0
## 102 0 0 0 0 0 0 0
## 103 0 0 0 0 0 0 0
## 104 0 0 0 0 0 0 0
## 105 0 0 0 0 0 0 0
## 106 0 0 0 0 0 0 0
## 107 0 0 0 0 0 0 0
## 108 0 0 0 0 0 0 0
## 109 0 0 0 0 0 0 0
## 110 0 0 0 0 0 0 0
## 111 0 0 0 0 0 0 0
## 112 0 0 0 0 0 0 0
## 113 0 0 0 0 0 0 0
## 114 0 0 0 0 0 0 0
## 115 0 0 0 0 0 0 0
## 116 0 0 0 0 0 0 0
## 117 0 0 0 0 0 0 0
## 118 0 0 0 0 0 0 0
## 119 0 0 0 0 0 0 0
## 120 0 0 0 0 0 0 0
## 121 0 0 0 0 0 0 0
## 122 0 0 0 0 0 0 0
## 123 0 0 0 0 0 0 0
## 124 0 0 0 0 0 0 0
## 125 0 0 0 0 0 0 0
## 126 0 0 0 0 0 0 0
## 127 0 0 0 0 0 0 0
## 128 0 0 0 0 0 0 0
## 129 0 0 0 0 0 0 0
## 130 0 0 0 0 0 0 0
## 131 0 0 0 0 0 0 0
## 132 0 0 0 0 0 0 0
## 133 0 0 0 0 0 0 0
## 134 0 0 0 0 0 0 0
## 135 0 0 0 0 0 0 0
## 136 0 0 0 0 0 0 0
## 137 0 0 1 0 0 0 0
## 138 0 0 0 0 0 0 0
## 139 0 0 0 0 0 0 0
## 140 0 0 0 0 0 0 0
## 141 0 0 0 0 0 0 0
## 142 0 0 0 0 0 0 0
## 143 0 0 0 0 0 0 0
## 144 0 0 0 0 0 0 0
## 145 0 0 0 0 0 0 0
## 146 0 0 0 0 0 0 0
## 147 0 0 0 0 0 0 0
## 148 0 0 0 0 0 0 0
## 149 0 0 0 0 0 0 0
## 150 0 0 0 0 0 0 0
## 151 0 0 0 0 0 0 0
## 152 0 0 0 0 0 0 0
## 153 0 0 0 0 0 0 0
## 154 0 0 1 0 0 0 0
## 155 0 0 0 0 0 0 0
## 156 0 0 0 0 0 0 0
## 157 0 0 1 0 0 0 0
## 158 0 0 0 0 0 0 0
## 159 0 0 0 0 0 0 0
## 160 0 0 0 0 0 0 0
## 161 0 0 1 0 0 0 0
## 162 0 0 0 0 0 0 0
## 163 0 0 0 0 0 0 0
## 164 0 0 0 0 0 0 0
## 165 0 0 0 0 0 0 0
## 166 0 0 1 0 0 0 0
## 167 0 0 0 0 0 0 0
## 168 0 0 1 0 0 0 0
## 169 0 0 1 0 0 0 0
## 170 0 0 0 0 0 0 0
## 171 0 0 0 0 0 0 0
## 172 0 0 0 0 0 0 0
## 173 0 0 0 0 0 0 0
## 174 0 0 0 0 0 0 0
## 175 0 0 0 0 0 0 0
## 176 0 0 0 0 0 0 0
## 177 0 0 0 0 0 0 0
## 178 0 0 0 0 0 0 0
## 179 0 0 0 0 0 0 0
## 180 0 0 0 0 0 0 0
## 181 0 0 0 0 0 0 0
## 182 0 0 0 0 0 0 0
## 183 0 0 0 0 0 0 0
## 184 0 0 0 0 0 0 0
## 185 0 0 0 0 0 0 0
## 186 0 0 0 0 0 0 0
## 187 0 0 0 0 0 0 0
## 188 0 0 0 0 0 0 0
## 189 0 0 0 0 0 0 0
## 190 0 0 0 0 0 0 0
## 191 0 0 0 0 0 0 0
## 192 0 0 0 0 0 0 0
## 193 0 0 0 0 0 0 0
## 194 0 0 0 0 0 0 0
## 195 0 0 0 0 0 0 0
## 196 0 0 0 0 0 0 0
## 197 0 0 0 0 0 0 0
## 198 0 0 0 0 0 0 0
## 199 0 0 0 0 0 0 0
## 200 0 0 0 0 0 0 0
## 201 0 0 0 0 0 0 0
## 202 0 0 0 0 0 0 0
## 203 0 0 0 0 0 0 0
## 204 0 0 0 0 0 0 0
## 205 0 0 0 0 0 0 0
## 206 0 0 0 0 0 0 0
## 207 0 0 0 0 0 0 0
## 208 0 0 0 1 0 0 0
## 209 0 0 0 0 0 0 0
## 210 0 0 0 0 0 0 0
## 211 0 0 0 0 0 0 0
## 212 0 0 0 0 1 0 0
## 213 0 0 0 0 0 0 0
## 214 0 0 1 0 0 0 0
## 215 0 0 0 0 0 0 0
## 216 0 0 0 0 0 0 0
## 217 0 0 0 0 0 0 0
## 218 0 0 0 0 0 0 0
## 219 0 0 1 0 0 0 0
## 220 0 0 0 0 0 0 0
## 221 0 0 0 0 0 0 0
## 222 0 0 0 0 0 0 0
## 223 0 0 0 0 0 0 0
## 224 0 0 0 0 0 0 0
## 225 0 0 0 0 0 0 0
## 226 0 0 0 0 0 0 0
## 227 0 0 0 0 0 0 0
## 228 0 0 0 0 0 0 0
## 229 0 0 0 0 0 0 0
## 230 0 0 0 0 0 0 0
## 231 0 0 0 0 0 0 0
## Kickm.X1 Crossm.X2 Kneem.X2 Elbowm.X2 Hookm.X2 Jabm.X2 Kickm.X2 upperm.X1
## 1 1 0 0 0 0 0 0 0
## 2 0 0 0 0 0 0 0 0
## 3 0 0 0 0 0 0 1 0
## 4 1 0 0 0 0 0 0 0
## 5 0 0 0 0 0 0 0 0
## 6 0 0 0 0 0 0 0 0
## 7 0 0 0 0 0 0 0 0
## 8 0 0 0 0 0 0 0 0
## 9 0 0 0 0 0 0 1 0
## 10 0 0 0 0 0 0 0 0
## 11 0 0 0 0 0 0 0 0
## 12 0 0 0 0 0 0 0 0
## 13 0 0 0 0 0 0 0 0
## 14 0 1 0 0 0 0 0 0
## 15 0 0 0 0 0 1 0 0
## 16 0 0 0 0 0 0 0 0
## 17 0 0 0 0 0 0 0 0
## 18 0 0 0 0 0 0 0 0
## 19 0 0 0 0 1 0 0 0
## 20 0 0 0 0 0 0 0 0
## 21 0 0 0 0 0 0 0 0
## 22 0 0 0 0 0 0 0 0
## 23 0 0 0 0 0 0 0 0
## 24 0 0 0 0 0 0 0 0
## 25 0 0 0 0 0 0 0 0
## 26 0 0 0 0 0 0 0 0
## 27 0 0 0 0 0 0 0 0
## 28 0 0 0 0 0 0 0 0
## 29 0 0 0 0 0 0 0 0
## 30 0 0 0 0 0 0 0 0
## 31 0 0 0 0 0 0 0 0
## 32 0 0 0 0 0 0 0 0
## 33 0 0 0 0 0 0 0 0
## 34 0 0 0 0 0 0 1 0
## 35 0 0 0 0 0 0 0 0
## 36 0 0 0 0 0 0 1 0
## 37 0 0 0 0 0 0 0 0
## 38 0 0 0 0 0 0 0 0
## 39 0 0 0 0 0 0 0 0
## 40 0 0 0 0 0 0 0 0
## 41 0 0 0 0 0 0 0 0
## 42 0 0 0 0 0 0 0 0
## 43 0 0 0 0 0 0 0 0
## 44 0 0 0 0 0 0 0 0
## 45 0 0 0 0 0 0 0 0
## 46 0 0 0 0 0 0 0 0
## 47 0 0 0 0 0 0 0 0
## 48 0 0 0 0 0 0 0 0
## 49 0 0 0 0 0 0 0 0
## 50 0 0 0 0 0 0 0 0
## 51 0 0 0 0 0 0 0 0
## 52 0 0 0 0 0 0 0 0
## 53 0 0 0 0 0 0 0 0
## 54 0 0 0 0 0 0 0 0
## 55 0 0 0 0 0 0 0 0
## 56 0 0 0 0 0 0 0 0
## 57 0 0 0 0 0 0 0 0
## 58 0 0 0 0 0 0 0 0
## 59 0 0 0 0 0 0 0 0
## 60 0 0 0 0 0 0 0 0
## 61 0 0 0 0 0 0 0 0
## 62 0 0 0 0 0 0 0 0
## 63 0 0 0 0 0 0 0 0
## 64 0 0 0 0 0 0 0 0
## 65 0 0 0 0 0 0 0 0
## 66 0 0 0 0 0 0 0 0
## 67 0 0 0 0 0 0 0 0
## 68 0 0 0 0 0 0 0 0
## 69 0 0 0 0 0 0 0 0
## 70 0 0 0 0 0 0 0 0
## 71 0 0 0 0 0 0 0 0
## 72 0 0 0 0 0 0 0 0
## 73 0 0 0 0 0 0 0 0
## 74 0 0 1 0 0 0 0 0
## 75 0 0 0 0 0 0 0 0
## 76 0 0 0 0 0 0 0 0
## 77 0 0 1 0 0 0 0 0
## 78 0 0 0 0 0 0 0 0
## 79 0 0 0 0 0 0 0 0
## 80 0 0 0 0 0 0 0 0
## 81 0 0 0 0 0 0 0 0
## 82 0 0 0 0 0 0 0 0
## 83 0 0 0 0 0 0 0 0
## 84 0 0 0 0 0 0 0 0
## 85 0 0 0 0 0 0 0 0
## 86 0 0 0 0 0 0 0 0
## 87 0 0 0 0 0 0 0 0
## 88 0 0 0 0 0 0 0 0
## 89 0 0 0 0 0 0 0 0
## 90 0 0 0 0 0 0 0 0
## 91 0 0 0 0 0 0 0 0
## 92 0 0 0 0 0 0 0 0
## 93 0 0 0 0 0 0 0 0
## 94 0 0 0 0 0 0 0 0
## 95 0 0 0 0 0 0 0 0
## 96 0 0 0 0 0 0 0 0
## 97 0 0 0 0 0 0 0 0
## 98 0 0 0 0 0 0 0 0
## 99 0 0 0 0 0 0 0 0
## 100 0 0 0 0 0 0 0 0
## 101 0 0 0 0 0 1 0 0
## 102 0 0 0 0 0 0 0 0
## 103 0 0 0 0 0 0 0 0
## 104 0 0 0 0 0 0 0 0
## 105 0 0 0 0 0 0 0 0
## 106 0 0 0 0 0 0 0 0
## 107 0 0 0 0 0 0 0 0
## 108 0 0 0 0 0 0 0 0
## 109 0 0 0 0 0 0 0 0
## 110 0 0 0 0 0 0 0 0
## 111 0 0 0 0 0 0 0 0
## 112 0 0 0 0 0 0 0 0
## 113 0 0 0 0 0 0 0 0
## 114 0 0 0 0 0 0 0 0
## 115 0 0 0 0 0 0 0 0
## 116 0 0 0 0 0 0 0 0
## 117 0 0 0 0 0 0 0 0
## 118 0 0 0 0 0 0 0 0
## 119 0 0 0 0 0 0 0 0
## 120 0 0 0 0 0 0 0 0
## 121 0 0 0 0 0 0 0 0
## 122 0 0 0 0 0 0 0 0
## 123 0 0 0 0 0 0 0 0
## 124 0 0 0 0 0 0 0 0
## 125 0 0 0 0 0 0 0 0
## 126 0 0 0 0 0 0 0 0
## 127 0 0 0 0 0 0 0 0
## 128 0 0 0 0 0 0 0 0
## 129 0 0 0 0 0 0 0 0
## 130 0 0 0 0 0 0 0 0
## 131 0 0 0 0 0 0 0 0
## 132 0 0 0 0 0 0 0 0
## 133 0 0 0 0 0 0 0 0
## 134 0 0 0 0 0 0 0 0
## 135 0 0 0 0 0 0 0 0
## 136 0 0 0 0 0 0 0 0
## 137 0 0 0 0 0 0 0 0
## 138 0 0 0 0 0 0 1 0
## 139 0 0 0 0 0 0 0 0
## 140 0 0 0 0 0 0 0 0
## 141 0 0 0 0 0 0 0 0
## 142 0 0 0 0 0 0 0 0
## 143 0 0 0 0 0 0 0 0
## 144 0 0 0 0 0 0 0 0
## 145 0 0 0 0 0 0 0 0
## 146 0 0 0 0 0 0 0 0
## 147 0 0 0 0 0 0 0 0
## 148 0 0 0 0 0 0 0 0
## 149 0 0 0 0 0 0 0 0
## 150 0 0 0 0 0 0 0 0
## 151 0 0 0 0 0 0 0 0
## 152 0 0 0 0 0 0 0 0
## 153 0 0 0 0 0 0 0 0
## 154 0 0 0 0 0 0 0 0
## 155 0 0 0 0 0 0 0 0
## 156 0 0 0 0 0 0 0 0
## 157 0 0 0 0 0 0 0 0
## 158 0 0 0 0 0 0 0 0
## 159 0 0 0 0 0 0 0 0
## 160 0 0 0 0 0 0 0 0
## 161 0 0 0 0 0 0 0 0
## 162 0 0 0 0 0 0 0 0
## 163 0 0 0 0 0 0 0 0
## 164 0 0 0 0 0 0 0 0
## 165 0 0 0 0 0 0 0 0
## 166 0 0 0 0 0 0 0 0
## 167 0 0 0 0 0 0 0 0
## 168 0 0 0 0 0 0 0 0
## 169 0 0 0 0 0 0 0 0
## 170 0 0 0 0 0 0 0 0
## 171 0 0 0 0 0 0 0 0
## 172 0 0 0 0 0 0 0 0
## 173 0 0 0 0 0 0 0 0
## 174 0 0 0 0 0 0 0 0
## 175 0 0 0 0 0 0 0 0
## 176 0 0 0 0 0 0 0 0
## 177 0 0 0 0 0 0 0 0
## 178 0 0 0 0 0 0 0 0
## 179 0 0 0 0 0 0 0 0
## 180 0 0 0 0 0 0 0 0
## 181 0 0 0 0 0 0 0 0
## 182 0 0 0 0 0 0 0 0
## 183 0 0 0 0 0 0 0 0
## 184 0 0 0 0 0 0 0 0
## 185 0 0 0 0 0 0 0 0
## 186 0 0 0 0 0 0 0 0
## 187 0 0 0 0 0 0 0 0
## 188 0 0 0 0 0 0 0 0
## 189 0 0 0 0 0 0 0 0
## 190 0 0 0 0 0 0 0 0
## 191 0 0 0 0 0 0 0 0
## 192 0 0 0 0 0 0 0 0
## 193 0 0 0 0 0 0 0 0
## 194 0 0 0 0 0 0 0 0
## 195 0 0 0 0 0 0 0 0
## 196 0 0 0 0 0 0 0 0
## 197 0 0 0 0 0 0 0 0
## 198 0 0 0 0 0 0 0 0
## 199 0 0 0 0 0 0 0 0
## 200 0 0 0 0 0 0 0 0
## 201 0 0 0 0 0 0 0 0
## 202 0 0 0 0 0 0 0 0
## 203 0 0 0 0 0 0 0 0
## 204 0 0 0 0 0 0 0 0
## 205 0 0 0 0 0 0 0 0
## 206 0 0 0 0 0 0 0 0
## 207 0 0 0 0 0 0 0 0
## 208 0 0 0 0 0 0 0 0
## 209 0 0 0 0 0 0 0 0
## 210 0 0 0 0 0 0 0 0
## 211 0 0 0 0 0 0 0 0
## 212 0 0 0 0 0 0 0 0
## 213 0 0 0 0 0 0 1 0
## 214 0 0 0 0 0 0 0 0
## 215 0 0 0 0 0 0 1 0
## 216 0 0 0 0 0 0 0 0
## 217 0 0 0 0 0 0 0 0
## 218 0 0 0 0 0 0 0 0
## 219 0 0 0 0 0 0 0 0
## 220 0 0 0 0 0 0 0 0
## 221 0 0 0 0 0 0 0 0
## 222 0 0 0 0 0 0 0 0
## 223 0 0 0 0 0 0 0 0
## 224 0 0 0 0 0 0 0 0
## 225 0 0 0 0 0 0 0 0
## 226 0 0 0 0 0 0 0 0
## 227 0 0 0 0 0 0 0 0
## 228 0 0 0 0 0 0 0 0
## 229 0 0 0 0 0 0 0 0
## 230 0 0 0 0 0 0 0 0
## 231 0 0 0 0 0 0 0 0
## upperm.X2 takedownm.X1 takedownm.X2 hammerm.X1 hammerm.X2 Cross2m.X1
## 1 0 0 0 0 0 0
## 2 0 0 0 0 0 0
## 3 0 0 0 0 0 0
## 4 0 0 0 0 0 0
## 5 0 0 0 0 0 0
## 6 0 0 0 0 0 1
## 7 0 0 0 0 0 1
## 8 0 0 0 0 0 0
## 9 0 0 0 0 0 0
## 10 0 0 0 0 0 0
## 11 0 0 0 0 0 0
## 12 0 0 0 0 0 0
## 13 0 0 0 0 0 0
## 14 0 0 0 0 0 0
## 15 0 0 0 0 0 0
## 16 0 0 0 0 0 1
## 17 0 0 0 0 0 1
## 18 0 0 0 0 0 0
## 19 0 0 0 0 0 0
## 20 0 0 0 0 0 0
## 21 0 0 0 0 0 0
## 22 0 0 0 0 0 0
## 23 0 0 0 0 0 0
## 24 0 0 0 0 0 0
## 25 0 0 0 0 0 0
## 26 0 0 0 0 0 0
## 27 0 0 0 0 0 0
## 28 0 0 0 0 0 0
## 29 0 0 0 0 0 0
## 30 0 0 0 0 0 0
## 31 0 0 0 0 0 0
## 32 0 0 0 0 0 0
## 33 0 0 0 0 0 0
## 34 0 0 0 0 0 0
## 35 0 0 0 0 0 0
## 36 0 0 0 0 0 0
## 37 0 0 0 0 0 0
## 38 0 0 0 0 0 0
## 39 0 0 0 0 0 0
## 40 0 0 0 0 0 0
## 41 0 0 0 0 0 0
## 42 0 0 0 0 0 0
## 43 0 0 0 0 0 0
## 44 0 0 0 0 0 0
## 45 0 0 0 0 0 0
## 46 0 0 0 0 0 0
## 47 0 0 0 0 0 0
## 48 0 0 0 0 0 0
## 49 0 0 0 0 0 0
## 50 0 0 0 0 0 0
## 51 0 0 0 0 0 0
## 52 0 0 0 0 0 0
## 53 0 0 0 0 0 0
## 54 0 0 0 0 0 0
## 55 0 0 0 0 0 0
## 56 0 0 0 0 0 0
## 57 0 0 0 0 0 0
## 58 0 0 0 0 0 0
## 59 0 0 0 0 0 0
## 60 0 0 0 0 0 0
## 61 0 0 0 0 0 0
## 62 0 0 0 0 0 0
## 63 0 0 0 0 0 0
## 64 0 0 0 0 0 0
## 65 0 0 0 0 0 0
## 66 0 0 0 0 0 0
## 67 0 0 0 0 0 0
## 68 0 0 0 0 0 0
## 69 0 0 0 0 0 0
## 70 0 0 0 0 0 0
## 71 0 0 0 0 0 0
## 72 0 0 0 0 0 0
## 73 0 0 0 0 0 0
## 74 1 0 0 0 0 0
## 75 0 0 0 0 0 0
## 76 0 0 0 0 0 0
## 77 1 0 0 0 0 0
## 78 0 0 0 0 0 0
## 79 0 0 0 0 0 0
## 80 0 0 0 0 0 0
## 81 0 0 0 0 0 0
## 82 0 0 0 0 0 0
## 83 0 0 0 0 0 0
## 84 0 0 0 0 0 0
## 85 0 0 0 0 0 0
## 86 0 0 0 0 0 0
## 87 0 0 0 0 0 0
## 88 0 0 0 0 0 0
## 89 0 0 0 0 0 0
## 90 0 0 0 0 0 0
## 91 0 0 0 0 0 0
## 92 0 0 0 0 0 0
## 93 0 0 0 0 0 0
## 94 0 0 0 0 0 0
## 95 0 0 0 0 0 0
## 96 0 0 0 0 0 0
## 97 0 0 0 0 0 0
## 98 0 0 0 0 0 0
## 99 0 0 0 0 0 0
## 100 0 0 0 0 0 0
## 101 0 0 0 0 0 0
## 102 0 0 0 0 0 0
## 103 0 0 0 0 0 0
## 104 0 0 0 0 0 0
## 105 0 0 0 0 0 0
## 106 0 0 0 0 0 0
## 107 0 0 0 0 0 0
## 108 0 0 0 0 0 0
## 109 0 0 0 0 0 0
## 110 0 0 0 0 0 0
## 111 0 0 0 0 0 0
## 112 0 0 0 0 0 0
## 113 0 0 0 0 0 0
## 114 0 0 0 0 0 0
## 115 0 0 0 0 0 0
## 116 0 0 0 0 0 0
## 117 0 0 0 0 0 0
## 118 0 0 0 0 0 0
## 119 0 0 0 0 0 0
## 120 0 0 0 0 0 0
## 121 0 0 0 0 0 0
## 122 0 0 0 0 0 0
## 123 0 0 0 0 0 0
## 124 0 0 0 0 0 0
## 125 0 0 0 0 0 0
## 126 0 0 0 0 0 0
## 127 0 0 0 0 0 0
## 128 0 0 0 0 0 0
## 129 0 0 0 0 0 0
## 130 0 0 0 0 0 0
## 131 0 0 0 0 0 0
## 132 0 0 0 0 0 0
## 133 0 0 0 0 0 0
## 134 0 0 0 0 0 0
## 135 0 0 0 0 0 0
## 136 0 0 0 0 0 0
## 137 0 0 0 0 0 0
## 138 0 0 0 0 0 0
## 139 0 0 0 0 0 0
## 140 0 0 0 0 0 0
## 141 0 0 0 0 0 0
## 142 0 0 0 0 0 0
## 143 0 0 0 0 0 0
## 144 0 0 0 0 0 0
## 145 0 0 0 0 0 0
## 146 0 0 0 0 0 0
## 147 0 0 0 0 0 0
## 148 0 0 0 0 0 0
## 149 0 0 0 0 0 0
## 150 0 0 0 0 0 0
## 151 0 0 0 0 0 0
## 152 0 0 0 0 0 0
## 153 0 0 0 0 0 0
## 154 0 0 0 0 0 1
## 155 0 0 0 0 0 0
## 156 0 0 0 0 0 0
## 157 0 0 0 0 0 0
## 158 0 0 0 0 0 0
## 159 0 0 0 0 0 0
## 160 0 0 0 0 0 0
## 161 0 0 0 0 0 1
## 162 0 0 0 0 0 0
## 163 0 0 0 0 0 0
## 164 0 0 0 0 0 0
## 165 0 0 0 0 0 0
## 166 0 0 0 0 0 0
## 167 0 0 0 0 0 0
## 168 0 0 0 0 0 1
## 169 0 0 0 0 0 1
## 170 0 0 0 0 0 0
## 171 0 0 0 0 0 0
## 172 0 0 0 0 0 0
## 173 0 0 0 0 0 0
## 174 0 0 0 0 0 0
## 175 0 0 0 0 0 0
## 176 0 0 0 0 0 0
## 177 0 0 0 0 0 0
## 178 0 0 0 0 0 0
## 179 0 0 0 0 0 0
## 180 0 0 0 0 0 0
## 181 0 0 0 0 0 0
## 182 0 0 0 0 0 0
## 183 0 0 0 0 0 0
## 184 0 0 0 0 0 0
## 185 0 0 0 0 0 0
## 186 0 0 0 0 0 0
## 187 0 0 0 0 0 0
## 188 0 0 0 0 0 0
## 189 0 0 0 0 0 0
## 190 0 0 0 0 0 0
## 191 0 0 0 0 0 0
## 192 0 0 0 0 0 0
## 193 0 0 0 0 0 0
## 194 0 0 0 0 0 0
## 195 0 0 0 0 0 0
## 196 0 0 0 0 0 0
## 197 0 0 0 0 0 0
## 198 0 0 0 0 0 0
## 199 0 0 0 0 0 0
## 200 0 0 0 0 0 0
## 201 0 0 0 0 0 0
## 202 0 0 0 0 0 0
## 203 0 0 0 0 0 0
## 204 0 0 0 0 0 0
## 205 0 0 0 0 0 0
## 206 0 0 0 0 0 0
## 207 0 0 0 0 0 0
## 208 0 0 0 1 0 0
## 209 0 0 0 0 0 0
## 210 0 0 0 0 0 0
## 211 0 0 0 0 0 0
## 212 0 0 0 0 0 0
## 213 0 0 0 0 0 0
## 214 0 0 0 0 0 0
## 215 0 0 0 0 0 0
## 216 0 0 0 0 0 0
## 217 0 0 0 0 0 0
## 218 0 0 0 0 0 0
## 219 0 0 0 0 0 0
## 220 0 0 0 0 0 0
## 221 0 0 0 0 0 0
## 222 0 0 0 0 0 0
## 223 0 0 0 0 0 0
## 224 0 0 0 0 0 0
## 225 0 0 0 0 0 0
## 226 0 0 0 0 0 0
## 227 0 0 0 0 0 0
## 228 0 0 0 0 0 0
## 229 0 0 0 0 0 0
## 230 0 0 0 0 0 0
## 231 0 0 0 0 0 0
## Knee2m.X1 Elbow2m.X1 Hook2m.X1 Jab2m.X1 Kick2m.X1 Cross2m.X2 Knee2m.X2
## 1 0 0 0 0 0 0 0
## 2 0 0 0 0 0 0 0
## 3 0 0 0 0 0 0 0
## 4 0 0 0 0 0 0 0
## 5 0 0 0 0 0 0 0
## 6 0 0 0 0 0 0 0
## 7 0 0 0 0 0 0 0
## 8 0 0 0 0 0 0 0
## 9 0 0 0 0 0 0 0
## 10 0 0 0 0 0 0 0
## 11 0 0 0 0 0 0 0
## 12 0 0 0 0 0 0 0
## 13 0 0 0 0 0 0 0
## 14 0 0 0 0 0 0 0
## 15 0 0 0 0 0 0 0
## 16 0 0 0 0 0 0 0
## 17 0 0 0 0 0 0 0
## 18 0 0 0 0 0 0 0
## 19 0 0 0 0 0 0 0
## 20 0 0 0 0 0 0 0
## 21 0 0 0 0 0 0 0
## 22 0 0 0 0 0 0 0
## 23 0 0 0 0 0 0 0
## 24 0 0 0 0 0 0 0
## 25 0 0 0 0 0 0 0
## 26 0 0 0 0 0 0 0
## 27 0 0 0 0 0 0 0
## 28 0 0 0 0 0 0 0
## 29 0 0 0 0 0 0 0
## 30 0 0 0 0 0 0 0
## 31 0 0 0 0 0 0 0
## 32 0 0 0 0 0 0 0
## 33 0 0 0 0 0 0 0
## 34 0 0 0 0 0 0 0
## 35 0 0 0 0 0 0 0
## 36 0 0 0 0 0 0 0
## 37 0 0 0 0 0 0 0
## 38 0 0 0 0 0 0 0
## 39 0 0 0 0 0 0 0
## 40 0 0 0 0 0 0 0
## 41 0 0 0 0 0 0 0
## 42 0 0 0 0 0 0 0
## 43 0 0 0 0 0 0 0
## 44 0 0 0 0 0 0 0
## 45 0 0 0 0 0 0 0
## 46 0 0 0 0 0 0 0
## 47 0 0 0 0 0 0 0
## 48 0 0 0 0 0 0 0
## 49 0 0 0 0 0 0 0
## 50 0 0 0 0 0 0 0
## 51 0 0 0 0 0 0 0
## 52 0 0 0 0 0 0 0
## 53 0 0 0 0 0 0 0
## 54 0 0 0 0 0 0 0
## 55 0 0 0 0 0 0 0
## 56 0 0 0 0 0 0 0
## 57 0 0 0 0 0 0 0
## 58 0 0 0 0 0 0 0
## 59 0 0 0 0 0 0 0
## 60 0 0 0 0 0 0 0
## 61 0 0 0 0 0 0 0
## 62 0 0 0 0 0 0 0
## 63 0 0 0 0 0 0 0
## 64 0 0 0 0 0 0 0
## 65 0 0 0 0 0 0 0
## 66 0 0 0 0 0 0 0
## 67 0 0 0 0 0 0 0
## 68 0 0 0 0 0 0 0
## 69 0 0 0 0 0 0 0
## 70 0 0 0 0 0 0 0
## 71 0 0 0 0 0 0 0
## 72 0 0 0 0 0 0 0
## 73 0 0 0 0 0 0 0
## 74 0 0 0 0 0 0 0
## 75 0 0 0 0 0 0 0
## 76 0 0 0 0 0 0 0
## 77 0 0 0 0 0 0 0
## 78 0 0 0 0 0 0 0
## 79 0 0 0 0 0 0 0
## 80 0 0 0 0 0 0 0
## 81 0 0 0 0 0 0 0
## 82 0 0 0 0 0 0 0
## 83 0 0 0 0 0 0 0
## 84 0 0 0 0 0 0 0
## 85 0 0 0 0 0 0 0
## 86 0 0 0 0 0 0 0
## 87 0 0 0 0 0 0 0
## 88 0 0 0 0 0 0 0
## 89 0 0 0 0 0 0 0
## 90 0 0 0 0 0 0 0
## 91 0 0 0 0 0 0 0
## 92 0 0 0 0 0 0 0
## 93 0 0 0 0 0 0 0
## 94 0 0 0 0 0 0 0
## 95 0 0 0 0 0 0 0
## 96 0 0 0 0 0 0 0
## 97 0 0 0 0 0 0 0
## 98 0 0 0 0 0 0 0
## 99 0 0 0 0 0 0 0
## 100 0 0 0 0 0 0 0
## 101 0 0 0 0 0 0 0
## 102 0 0 0 0 0 0 0
## 103 0 0 0 0 0 0 0
## 104 0 0 0 0 0 0 0
## 105 0 0 0 0 0 0 0
## 106 0 0 0 0 0 0 0
## 107 0 0 0 0 0 0 0
## 108 0 0 0 0 0 0 0
## 109 0 0 0 0 0 0 0
## 110 0 0 0 0 0 0 0
## 111 0 0 0 0 0 0 0
## 112 0 0 0 0 0 0 0
## 113 0 0 0 0 0 0 0
## 114 0 0 0 0 0 0 0
## 115 0 0 0 0 0 0 0
## 116 0 0 0 0 0 0 0
## 117 0 0 0 0 0 0 0
## 118 0 0 0 0 0 0 0
## 119 0 0 0 0 0 0 0
## 120 0 0 0 0 0 0 0
## 121 0 0 0 0 0 0 0
## 122 0 0 0 0 0 0 0
## 123 0 0 0 0 0 0 0
## 124 0 0 0 0 0 0 0
## 125 0 0 0 0 0 0 0
## 126 0 0 0 0 0 0 0
## 127 0 0 0 0 0 0 0
## 128 0 0 0 0 0 0 0
## 129 0 0 0 0 0 0 0
## 130 0 0 0 0 0 0 0
## 131 0 0 0 0 0 0 0
## 132 0 0 0 0 0 0 0
## 133 0 0 0 0 0 0 0
## 134 0 0 0 0 0 0 0
## 135 0 0 0 0 0 0 0
## 136 0 0 0 0 0 0 0
## 137 0 0 0 0 0 0 0
## 138 0 0 0 0 0 0 0
## 139 0 0 0 0 0 0 0
## 140 0 0 0 0 0 0 0
## 141 0 0 0 0 0 0 0
## 142 0 0 0 0 0 0 0
## 143 0 0 0 0 0 0 0
## 144 0 0 0 0 0 0 0
## 145 0 0 0 0 0 0 0
## 146 0 0 0 0 0 0 0
## 147 0 0 0 0 0 0 0
## 148 0 0 0 0 0 0 0
## 149 0 0 0 0 0 0 0
## 150 0 0 0 0 0 0 0
## 151 0 0 0 0 0 0 0
## 152 0 0 0 0 0 0 0
## 153 0 0 0 0 0 0 0
## 154 0 0 0 0 0 0 0
## 155 0 0 0 0 0 0 0
## 156 0 0 0 0 0 0 0
## 157 0 0 0 0 0 0 0
## 158 0 0 0 0 0 0 0
## 159 0 0 0 0 0 0 0
## 160 0 0 0 0 0 0 0
## 161 0 0 0 0 0 0 0
## 162 0 0 0 0 0 0 0
## 163 0 0 0 0 0 0 0
## 164 0 0 0 0 0 0 0
## 165 0 0 0 0 0 0 0
## 166 0 0 0 0 0 0 0
## 167 0 0 0 0 0 0 0
## 168 0 0 0 0 0 0 0
## 169 0 0 0 0 0 0 0
## 170 0 0 0 0 0 0 0
## 171 0 0 0 0 0 0 0
## 172 0 0 0 0 0 0 0
## 173 0 0 0 0 0 0 0
## 174 0 0 0 0 0 0 0
## 175 0 0 0 0 0 0 0
## 176 0 0 0 0 0 0 0
## 177 0 0 0 0 0 0 0
## 178 0 0 0 0 0 0 0
## 179 0 0 0 0 0 0 0
## 180 0 0 0 0 0 0 0
## 181 0 0 0 0 0 0 0
## 182 0 0 0 0 0 0 0
## 183 0 0 0 0 0 0 0
## 184 0 0 0 0 0 0 0
## 185 0 0 0 0 0 0 0
## 186 0 0 0 0 0 0 0
## 187 0 0 0 0 0 0 0
## 188 0 0 0 0 0 0 0
## 189 0 0 0 0 0 0 0
## 190 0 0 0 0 0 0 0
## 191 0 0 0 0 0 0 0
## 192 0 0 0 0 0 0 0
## 193 0 0 0 0 0 0 0
## 194 0 0 0 0 0 0 0
## 195 0 0 0 0 0 0 0
## 196 0 0 0 0 0 0 0
## 197 0 0 0 0 0 0 0
## 198 0 0 0 0 0 0 0
## 199 0 0 0 0 0 0 0
## 200 0 0 0 0 0 0 0
## 201 0 0 0 0 0 0 0
## 202 0 0 0 0 0 0 0
## 203 0 0 0 0 0 0 0
## 204 0 0 0 0 0 0 0
## 205 0 0 0 0 0 0 0
## 206 0 0 0 0 0 0 0
## 207 0 0 0 0 0 0 0
## 208 0 0 0 0 0 0 0
## 209 0 0 0 0 0 0 0
## 210 0 0 0 0 0 0 0
## 211 0 0 0 0 0 0 0
## 212 0 0 0 0 0 0 0
## 213 0 0 0 0 0 0 0
## 214 0 0 0 0 0 0 0
## 215 0 0 0 0 0 0 0
## 216 0 0 0 0 0 0 0
## 217 0 0 0 0 0 0 0
## 218 0 0 0 0 0 0 0
## 219 0 0 0 0 0 0 0
## 220 0 0 0 0 0 0 0
## 221 0 0 0 0 0 0 0
## 222 0 0 0 0 0 0 0
## 223 0 0 0 0 0 0 0
## 224 0 0 0 0 0 0 0
## 225 0 0 0 0 0 0 0
## 226 0 0 0 0 0 0 0
## 227 0 0 0 0 0 0 0
## 228 0 0 0 0 0 0 0
## 229 0 0 0 0 0 0 0
## 230 0 0 0 0 0 0 0
## 231 0 0 0 0 0 0 0
## Elbow2m.X2 Hook2m.X2 Jab2m.X2 Kick2m.X2 upper2m.X1 upper2m.X2 takedown2m.X1
## 1 0 0 0 0 0 0 0
## 2 0 0 0 0 0 0 0
## 3 0 0 0 0 0 0 0
## 4 0 0 0 0 0 0 0
## 5 0 0 0 0 0 0 0
## 6 0 0 0 0 0 0 0
## 7 0 0 0 0 0 0 0
## 8 0 0 0 0 0 0 0
## 9 0 0 0 0 0 0 0
## 10 0 0 0 0 0 0 0
## 11 0 0 0 0 0 0 0
## 12 0 0 0 0 0 0 0
## 13 0 0 0 0 0 0 0
## 14 0 0 0 0 0 0 0
## 15 0 0 0 0 0 0 0
## 16 0 0 0 0 0 0 0
## 17 0 0 0 0 0 0 0
## 18 0 0 0 0 0 0 0
## 19 0 0 0 0 0 0 0
## 20 0 0 0 0 0 0 0
## 21 0 0 0 0 0 0 0
## 22 0 0 0 0 0 0 0
## 23 0 0 0 0 0 0 0
## 24 0 0 0 0 0 0 0
## 25 0 0 0 0 0 0 0
## 26 0 0 0 0 0 0 0
## 27 0 0 0 0 0 0 0
## 28 0 0 0 0 0 0 0
## 29 0 0 0 0 0 0 0
## 30 0 0 0 0 0 0 0
## 31 0 0 0 0 0 0 0
## 32 0 0 0 0 0 0 0
## 33 0 0 0 0 0 0 0
## 34 0 0 0 0 0 0 0
## 35 0 0 0 0 0 0 0
## 36 0 0 0 0 0 0 0
## 37 0 0 0 0 0 0 0
## 38 0 0 0 0 0 0 0
## 39 0 0 0 0 0 0 0
## 40 0 0 0 0 0 0 0
## 41 0 0 0 0 0 0 0
## 42 0 0 0 0 0 0 0
## 43 0 0 0 0 0 0 0
## 44 0 0 0 0 0 0 0
## 45 0 0 0 0 0 0 0
## 46 0 0 0 0 0 0 0
## 47 0 0 0 0 0 0 0
## 48 0 0 0 0 0 0 0
## 49 0 0 0 0 0 0 0
## 50 0 0 0 0 0 0 0
## 51 0 0 0 0 0 0 0
## 52 0 0 0 0 0 0 0
## 53 0 0 0 0 0 0 0
## 54 0 0 0 0 0 0 0
## 55 0 0 0 0 0 0 0
## 56 0 0 0 0 0 0 0
## 57 0 0 0 0 0 0 0
## 58 0 0 0 0 0 0 0
## 59 0 0 0 0 0 0 0
## 60 0 0 0 0 0 0 0
## 61 0 0 0 0 0 0 0
## 62 0 0 0 0 0 0 0
## 63 0 0 0 0 0 0 0
## 64 0 0 0 0 0 0 0
## 65 0 0 0 0 0 0 0
## 66 0 0 0 0 0 0 0
## 67 0 0 0 0 0 0 0
## 68 0 0 0 0 0 0 0
## 69 0 0 0 0 0 0 0
## 70 0 0 0 0 0 0 0
## 71 0 0 0 0 0 0 0
## 72 0 0 0 0 0 0 0
## 73 0 0 0 0 0 0 0
## 74 0 0 0 0 0 0 0
## 75 0 0 0 0 0 0 0
## 76 0 0 0 0 0 0 0
## 77 0 0 0 0 0 0 0
## 78 0 0 0 0 0 0 0
## 79 0 0 0 0 0 0 0
## 80 0 0 0 0 0 0 0
## 81 0 0 0 0 0 0 0
## 82 0 0 0 0 0 0 0
## 83 0 0 0 0 0 0 0
## 84 0 0 0 0 0 0 0
## 85 0 0 0 0 0 0 0
## 86 0 0 0 0 0 0 0
## 87 0 0 0 0 0 0 0
## 88 0 0 0 0 0 0 0
## 89 0 0 0 0 0 0 0
## 90 0 0 0 0 0 0 0
## 91 0 0 0 0 0 0 0
## 92 0 0 0 0 0 0 0
## 93 0 0 0 0 0 0 0
## 94 0 0 0 0 0 0 0
## 95 0 0 0 0 0 0 0
## 96 0 0 0 0 0 0 0
## 97 0 0 0 0 0 0 0
## 98 0 0 0 0 0 0 0
## 99 0 0 0 0 0 0 0
## 100 0 0 0 0 0 0 0
## 101 0 0 0 0 0 0 0
## 102 0 0 0 0 0 0 0
## 103 0 0 0 0 0 0 0
## 104 0 0 0 0 0 0 0
## 105 0 0 0 0 0 0 0
## 106 0 0 0 0 0 0 0
## 107 0 0 0 0 0 0 0
## 108 0 0 0 0 0 0 0
## 109 0 0 0 0 0 0 0
## 110 0 0 0 0 0 0 0
## 111 0 0 0 0 0 0 0
## 112 0 0 0 0 0 0 0
## 113 0 0 0 0 0 0 0
## 114 0 0 0 0 0 0 0
## 115 0 0 0 0 0 0 0
## 116 0 0 0 0 0 0 0
## 117 0 0 0 0 0 0 0
## 118 0 0 0 0 0 0 0
## 119 0 0 0 0 0 0 0
## 120 0 0 0 0 0 0 0
## 121 0 0 0 0 0 0 0
## 122 0 0 0 0 0 0 0
## 123 0 0 0 0 0 0 0
## 124 0 0 0 0 0 0 0
## 125 0 0 0 0 0 0 0
## 126 0 0 0 0 0 0 0
## 127 0 0 0 0 0 0 0
## 128 0 0 0 0 0 0 0
## 129 0 0 0 0 0 0 0
## 130 0 0 0 0 0 0 0
## 131 0 0 0 0 0 0 0
## 132 0 0 0 0 0 0 0
## 133 0 0 0 0 0 0 0
## 134 0 0 0 0 0 0 0
## 135 0 0 0 0 0 0 0
## 136 0 0 0 0 0 0 0
## 137 0 0 0 0 0 0 0
## 138 0 0 0 0 0 0 0
## 139 0 0 0 0 0 0 0
## 140 0 0 0 0 0 0 0
## 141 0 0 0 0 0 0 0
## 142 0 0 0 0 0 0 0
## 143 0 0 0 0 0 0 0
## 144 0 0 0 0 0 0 0
## 145 0 0 0 0 0 0 0
## 146 0 0 0 0 0 0 0
## 147 0 0 0 0 0 0 0
## 148 0 0 0 0 0 0 0
## 149 0 0 0 0 0 0 0
## 150 0 0 0 0 0 0 0
## 151 0 0 0 0 0 0 0
## 152 0 0 0 0 0 0 0
## 153 0 0 0 0 0 0 0
## 154 0 0 0 0 0 0 0
## 155 0 0 0 0 0 0 0
## 156 0 0 0 0 0 0 0
## 157 0 0 0 0 0 0 0
## 158 0 0 0 0 0 0 0
## 159 0 0 0 0 0 0 0
## 160 0 0 0 0 0 0 0
## 161 0 0 0 0 0 0 0
## 162 0 0 0 0 0 0 0
## 163 0 0 0 0 0 0 0
## 164 0 0 0 0 0 0 0
## 165 0 0 0 0 0 0 0
## 166 0 0 0 0 0 0 0
## 167 0 0 0 0 0 0 0
## 168 0 0 0 0 0 0 0
## 169 0 0 0 0 0 0 0
## 170 0 0 0 0 0 0 0
## 171 0 0 0 0 0 0 0
## 172 0 0 0 0 0 0 0
## 173 0 0 0 0 0 0 0
## 174 0 0 0 0 0 0 0
## 175 0 0 0 0 0 0 0
## 176 0 0 0 0 0 0 0
## 177 0 0 0 0 0 0 0
## 178 0 0 0 0 0 0 0
## 179 0 0 0 0 0 0 0
## 180 0 0 0 0 0 0 0
## 181 0 0 0 0 0 0 0
## 182 0 0 0 0 0 0 0
## 183 0 0 0 0 0 0 0
## 184 0 0 0 0 0 0 0
## 185 0 0 0 0 0 0 0
## 186 0 0 0 0 0 0 0
## 187 0 0 0 0 0 0 0
## 188 0 0 0 0 0 0 0
## 189 0 0 0 0 0 0 0
## 190 0 0 0 0 0 0 0
## 191 0 0 0 0 0 0 0
## 192 0 0 0 0 0 0 0
## 193 0 0 0 0 0 0 0
## 194 0 0 0 0 0 0 0
## 195 0 0 0 0 0 0 0
## 196 0 0 0 0 0 0 0
## 197 0 0 0 0 0 0 0
## 198 0 0 0 0 0 0 0
## 199 0 0 0 0 0 0 0
## 200 0 0 0 0 0 0 0
## 201 0 0 0 0 0 0 0
## 202 0 0 0 0 0 0 0
## 203 0 0 0 0 0 0 0
## 204 0 0 0 0 0 0 0
## 205 0 0 0 0 0 0 0
## 206 0 0 0 0 0 0 0
## 207 0 0 0 0 0 0 0
## 208 0 0 0 0 0 0 0
## 209 0 0 0 0 0 0 0
## 210 0 0 0 0 0 0 0
## 211 0 0 0 0 0 0 0
## 212 0 0 0 0 0 0 0
## 213 0 0 0 0 0 0 0
## 214 0 0 0 0 0 0 0
## 215 0 0 0 0 0 0 0
## 216 0 0 0 0 0 0 0
## 217 0 0 0 0 0 0 0
## 218 0 0 0 0 0 0 0
## 219 0 0 0 0 0 0 0
## 220 0 0 0 0 0 0 0
## 221 0 0 0 0 0 0 0
## 222 0 0 0 0 0 0 0
## 223 0 0 0 0 0 0 0
## 224 0 0 0 0 0 0 0
## 225 0 0 0 0 0 0 0
## 226 0 0 0 0 0 0 0
## 227 0 0 0 0 0 0 0
## 228 0 0 0 0 0 0 0
## 229 0 0 0 0 0 0 0
## 230 0 0 0 0 0 0 0
## 231 0 0 0 0 0 0 0
## takedown2m.X2 hammer2m.X1 hammer2m.X2 Cross3m.X1 Knee3m.X1 Elbow3m.X1
## 1 0 0 0 0 0 0
## 2 0 0 0 0 0 0
## 3 0 0 0 0 0 0
## 4 0 0 0 0 0 0
## 5 0 0 0 0 0 0
## 6 0 0 0 0 0 0
## 7 0 0 0 0 0 0
## 8 0 0 0 0 0 0
## 9 0 0 0 0 0 0
## 10 0 0 0 0 0 0
## 11 0 0 0 0 0 0
## 12 0 0 0 0 0 0
## 13 0 0 0 0 0 0
## 14 0 0 0 0 0 0
## 15 0 0 0 0 0 0
## 16 0 0 0 0 0 0
## 17 0 0 0 0 0 0
## 18 0 0 0 0 0 0
## 19 0 0 0 0 0 0
## 20 0 0 0 0 0 0
## 21 0 0 0 0 0 0
## 22 0 0 0 0 0 0
## 23 0 0 0 0 0 0
## 24 0 0 0 0 0 0
## 25 0 0 0 0 0 0
## 26 0 0 0 0 0 0
## 27 0 0 0 0 0 0
## 28 0 0 0 0 0 0
## 29 0 0 0 0 0 0
## 30 0 0 0 0 0 0
## 31 0 0 0 0 0 0
## 32 0 0 0 0 0 0
## 33 0 0 0 0 0 0
## 34 0 0 0 0 0 0
## 35 0 0 0 0 0 0
## 36 0 0 0 0 0 0
## 37 0 0 0 0 0 0
## 38 0 0 0 0 0 0
## 39 0 0 0 0 0 0
## 40 0 0 0 0 0 0
## 41 0 0 0 0 0 0
## 42 0 0 0 0 0 0
## 43 0 0 0 0 0 0
## 44 0 0 0 0 0 0
## 45 0 0 0 0 0 0
## 46 0 0 0 0 0 0
## 47 0 0 0 0 0 0
## 48 0 0 0 0 0 0
## 49 0 0 0 0 0 0
## 50 0 0 0 0 0 0
## 51 0 0 0 0 0 0
## 52 0 0 0 0 0 0
## 53 0 0 0 0 0 0
## 54 0 0 0 0 0 0
## 55 0 0 0 0 0 0
## 56 0 0 0 0 0 0
## 57 0 0 0 0 0 0
## 58 0 0 0 0 0 0
## 59 0 0 0 0 0 0
## 60 0 0 0 0 0 0
## 61 0 0 0 0 0 0
## 62 0 0 0 0 0 0
## 63 0 0 0 0 0 0
## 64 0 0 0 0 0 0
## 65 0 0 0 0 0 0
## 66 0 0 0 0 0 0
## 67 0 0 0 0 0 0
## 68 0 0 0 0 0 0
## 69 0 0 0 0 0 0
## 70 0 0 0 0 0 0
## 71 0 0 0 0 0 0
## 72 0 0 0 0 0 0
## 73 0 0 0 0 0 0
## 74 0 0 0 0 0 0
## 75 0 0 0 0 0 0
## 76 0 0 0 0 0 0
## 77 0 0 0 0 0 0
## 78 0 0 0 0 0 0
## 79 0 0 0 0 0 0
## 80 0 0 0 0 0 0
## 81 0 0 0 0 0 0
## 82 0 0 0 0 0 0
## 83 0 0 0 0 0 0
## 84 0 0 0 0 0 0
## 85 0 0 0 0 0 0
## 86 0 0 0 0 0 0
## 87 0 0 0 0 0 0
## 88 0 0 0 0 0 0
## 89 0 0 0 0 0 0
## 90 0 0 0 0 0 0
## 91 0 0 0 0 0 0
## 92 0 0 0 0 0 0
## 93 0 0 0 0 0 0
## 94 0 0 0 0 0 0
## 95 0 0 0 0 0 0
## 96 0 0 0 0 0 0
## 97 0 0 0 0 0 0
## 98 0 0 0 0 0 0
## 99 0 0 0 0 0 0
## 100 0 0 0 0 0 0
## 101 0 0 0 0 0 0
## 102 0 0 0 0 0 0
## 103 0 0 0 0 0 0
## 104 0 0 0 0 0 0
## 105 0 0 0 0 0 0
## 106 0 0 0 0 0 0
## 107 0 0 0 0 0 0
## 108 0 0 0 0 0 0
## 109 0 0 0 0 0 0
## 110 0 0 0 0 0 0
## 111 0 0 0 0 0 0
## 112 0 0 0 0 0 0
## 113 0 0 0 0 0 0
## 114 0 0 0 0 0 0
## 115 0 0 0 0 0 0
## 116 0 0 0 0 0 0
## 117 0 0 0 0 0 0
## 118 0 0 0 0 0 0
## 119 0 0 0 0 0 0
## 120 0 0 0 0 0 0
## 121 0 0 0 0 0 0
## 122 0 0 0 0 0 0
## 123 0 0 0 0 0 0
## 124 0 0 0 0 0 0
## 125 0 0 0 0 0 0
## 126 0 0 0 0 0 0
## 127 0 0 0 0 0 0
## 128 0 0 0 0 0 0
## 129 0 0 0 0 0 0
## 130 0 0 0 0 0 0
## 131 0 0 0 0 0 0
## 132 0 0 0 0 0 0
## 133 0 0 0 0 0 0
## 134 0 0 0 0 0 0
## 135 0 0 0 0 0 0
## 136 0 0 0 0 0 0
## 137 0 0 0 0 0 0
## 138 0 0 0 0 0 0
## 139 0 0 0 0 0 0
## 140 0 0 0 0 0 0
## 141 0 0 0 0 0 0
## 142 0 0 0 0 0 0
## 143 0 0 0 0 0 0
## 144 0 0 0 0 0 0
## 145 0 0 0 0 0 0
## 146 0 0 0 0 0 0
## 147 0 0 0 0 0 0
## 148 0 0 0 0 0 0
## 149 0 0 0 0 0 0
## 150 0 0 0 0 0 0
## 151 0 0 0 0 0 0
## 152 0 0 0 0 0 0
## 153 0 0 0 0 0 0
## 154 0 0 0 0 0 0
## 155 0 0 0 0 0 0
## 156 0 0 0 0 0 0
## 157 0 0 0 0 0 0
## 158 0 0 0 0 0 0
## 159 0 0 0 0 0 0
## 160 0 0 0 0 0 0
## 161 0 0 0 0 0 0
## 162 0 0 0 0 0 0
## 163 0 0 0 0 0 0
## 164 0 0 0 0 0 0
## 165 0 0 0 0 0 0
## 166 0 0 0 0 0 0
## 167 0 0 0 0 0 0
## 168 0 0 0 0 0 0
## 169 0 0 0 1 0 0
## 170 0 0 0 0 0 0
## 171 0 0 0 0 0 0
## 172 0 0 0 0 0 0
## 173 0 0 0 0 0 0
## 174 0 0 0 0 0 0
## 175 0 0 0 0 0 0
## 176 0 0 0 0 0 0
## 177 0 0 0 0 0 0
## 178 0 0 0 0 0 0
## 179 0 0 0 0 0 0
## 180 0 0 0 0 0 0
## 181 0 0 0 0 0 0
## 182 0 0 0 0 0 0
## 183 0 0 0 0 0 0
## 184 0 0 0 0 0 0
## 185 0 0 0 0 0 0
## 186 0 0 0 0 0 0
## 187 0 0 0 0 0 0
## 188 0 0 0 0 0 0
## 189 0 0 0 0 0 0
## 190 0 0 0 0 0 0
## 191 0 0 0 0 0 0
## 192 0 0 0 0 0 0
## 193 0 0 0 0 0 0
## 194 0 0 0 0 0 0
## 195 0 0 0 0 0 0
## 196 0 0 0 0 0 0
## 197 0 0 0 0 0 0
## 198 0 0 0 0 0 0
## 199 0 0 0 0 0 0
## 200 0 0 0 0 0 0
## 201 0 0 0 0 0 0
## 202 0 0 0 0 0 0
## 203 0 0 0 0 0 0
## 204 0 0 0 0 0 0
## 205 0 0 0 0 0 0
## 206 0 0 0 0 0 0
## 207 0 0 0 0 0 0
## 208 0 0 0 0 0 0
## 209 0 0 0 0 0 0
## 210 0 0 0 0 0 0
## 211 0 0 0 0 0 0
## 212 0 0 0 0 0 0
## 213 0 0 0 0 0 0
## 214 0 0 0 0 0 0
## 215 0 0 0 0 0 0
## 216 0 0 0 0 0 0
## 217 0 0 0 0 0 0
## 218 0 0 0 0 0 0
## 219 0 0 0 0 0 0
## 220 0 0 0 0 0 0
## 221 0 0 0 0 0 0
## 222 0 0 0 0 0 0
## 223 0 0 0 0 0 0
## 224 0 0 0 0 0 0
## 225 0 0 0 0 0 0
## 226 0 0 0 0 0 0
## 227 0 0 0 0 0 0
## 228 0 0 0 0 0 0
## 229 0 0 0 0 0 0
## 230 0 0 0 0 0 0
## 231 0 0 0 0 0 0
## Hook3m.X1 Jab3m.X1 Kick3m.X1 Cross3m.X2 Knee3m.X2 Elbow3m.X2 Hook3m.X2
## 1 0 0 0 0 0 0 0
## 2 0 0 0 0 0 0 0
## 3 0 0 0 0 0 0 0
## 4 0 0 0 0 0 0 0
## 5 0 0 0 0 0 0 0
## 6 0 0 0 0 0 0 0
## 7 0 0 0 0 0 0 0
## 8 0 0 0 0 0 0 0
## 9 0 0 0 0 0 0 0
## 10 0 0 0 0 0 0 0
## 11 0 0 0 0 0 0 0
## 12 0 0 0 0 0 0 0
## 13 0 0 0 0 0 0 0
## 14 0 0 0 0 0 0 0
## 15 0 0 0 0 0 0 0
## 16 0 0 0 0 0 0 0
## 17 0 0 0 0 0 0 0
## 18 0 0 0 0 0 0 0
## 19 0 0 0 0 0 0 0
## 20 0 0 0 0 0 0 0
## 21 0 0 0 0 0 0 0
## 22 0 0 0 0 0 0 0
## 23 0 0 0 0 0 0 0
## 24 0 0 0 0 0 0 0
## 25 0 0 0 0 0 0 0
## 26 0 0 0 0 0 0 0
## 27 0 0 0 0 0 0 0
## 28 0 0 0 0 0 0 0
## 29 0 0 0 0 0 0 0
## 30 0 0 0 0 0 0 0
## 31 0 0 0 0 0 0 0
## 32 0 0 0 0 0 0 0
## 33 0 0 0 0 0 0 0
## 34 0 0 0 0 0 0 0
## 35 0 0 0 0 0 0 0
## 36 0 0 0 0 0 0 0
## 37 0 0 0 0 0 0 0
## 38 0 0 0 0 0 0 0
## 39 0 0 0 0 0 0 0
## 40 0 0 0 0 0 0 0
## 41 0 0 0 0 0 0 0
## 42 0 0 0 0 0 0 0
## 43 0 0 0 0 0 0 0
## 44 0 0 0 0 0 0 0
## 45 0 0 0 0 0 0 0
## 46 0 0 0 0 0 0 0
## 47 0 0 0 0 0 0 0
## 48 0 0 0 0 0 0 0
## 49 0 0 0 0 0 0 0
## 50 0 0 0 0 0 0 0
## 51 0 0 0 0 0 0 0
## 52 0 0 0 0 0 0 0
## 53 0 0 0 0 0 0 0
## 54 0 0 0 0 0 0 0
## 55 0 0 0 0 0 0 0
## 56 0 0 0 0 0 0 0
## 57 0 0 0 0 0 0 0
## 58 0 0 0 0 0 0 0
## 59 0 0 0 0 0 0 0
## 60 0 0 0 0 0 0 0
## 61 0 0 0 0 0 0 0
## 62 0 0 0 0 0 0 0
## 63 0 0 0 0 0 0 0
## 64 0 0 0 0 0 0 0
## 65 0 0 0 0 0 0 0
## 66 0 0 0 0 0 0 0
## 67 0 0 0 0 0 0 0
## 68 0 0 0 0 0 0 0
## 69 0 0 0 0 0 0 0
## 70 0 0 0 0 0 0 0
## 71 0 0 0 0 0 0 0
## 72 0 0 0 0 0 0 0
## 73 0 0 0 0 0 0 0
## 74 0 0 0 0 0 0 0
## 75 0 0 0 0 0 0 0
## 76 0 0 0 0 0 0 0
## 77 0 0 0 0 0 0 0
## 78 0 0 0 0 0 0 0
## 79 0 0 0 0 0 0 0
## 80 0 0 0 0 0 0 0
## 81 0 0 0 0 0 0 0
## 82 0 0 0 0 0 0 0
## 83 0 0 0 0 0 0 0
## 84 0 0 0 0 0 0 0
## 85 0 0 0 0 0 0 0
## 86 0 0 0 0 0 0 0
## 87 0 0 0 0 0 0 0
## 88 0 0 0 0 0 0 0
## 89 0 0 0 0 0 0 0
## 90 0 0 0 0 0 0 0
## 91 0 0 0 0 0 0 0
## 92 0 0 0 0 0 0 0
## 93 0 0 0 0 0 0 0
## 94 0 0 0 0 0 0 0
## 95 0 0 0 0 0 0 0
## 96 0 0 0 0 0 0 0
## 97 0 0 0 0 0 0 0
## 98 0 0 0 0 0 0 0
## 99 0 0 0 0 0 0 0
## 100 0 0 0 0 0 0 0
## 101 0 0 0 0 0 0 0
## 102 0 0 0 0 0 0 0
## 103 0 0 0 0 0 0 0
## 104 0 0 0 0 0 0 0
## 105 0 0 0 0 0 0 0
## 106 0 0 0 0 0 0 0
## 107 0 0 0 0 0 0 0
## 108 0 0 0 0 0 0 0
## 109 0 0 0 0 0 0 0
## 110 0 0 0 0 0 0 0
## 111 0 0 0 0 0 0 0
## 112 0 0 0 0 0 0 0
## 113 0 0 0 0 0 0 0
## 114 0 0 0 0 0 0 0
## 115 0 0 0 0 0 0 0
## 116 0 0 0 0 0 0 0
## 117 0 0 0 0 0 0 0
## 118 0 0 0 0 0 0 0
## 119 0 0 0 0 0 0 0
## 120 0 0 0 0 0 0 0
## 121 0 0 0 0 0 0 0
## 122 0 0 0 0 0 0 0
## 123 0 0 0 0 0 0 0
## 124 0 0 0 0 0 0 0
## 125 0 0 0 0 0 0 0
## 126 0 0 0 0 0 0 0
## 127 0 0 0 0 0 0 0
## 128 0 0 0 0 0 0 0
## 129 0 0 0 0 0 0 0
## 130 0 0 0 0 0 0 0
## 131 0 0 0 0 0 0 0
## 132 0 0 0 0 0 0 0
## 133 0 0 0 0 0 0 0
## 134 0 0 0 0 0 0 0
## 135 0 0 0 0 0 0 0
## 136 0 0 0 0 0 0 0
## 137 0 0 0 0 0 0 0
## 138 0 0 0 0 0 0 0
## 139 0 0 0 0 0 0 0
## 140 0 0 0 0 0 0 0
## 141 0 0 0 0 0 0 0
## 142 0 0 0 0 0 0 0
## 143 0 0 0 0 0 0 0
## 144 0 0 0 0 0 0 0
## 145 0 0 0 0 0 0 0
## 146 0 0 0 0 0 0 0
## 147 0 0 0 0 0 0 0
## 148 0 0 0 0 0 0 0
## 149 0 0 0 0 0 0 0
## 150 0 0 0 0 0 0 0
## 151 0 0 0 0 0 0 0
## 152 0 0 0 0 0 0 0
## 153 0 0 0 0 0 0 0
## 154 0 0 0 0 0 0 0
## 155 0 0 0 0 0 0 0
## 156 0 0 0 0 0 0 0
## 157 0 0 0 0 0 0 0
## 158 0 0 0 0 0 0 0
## 159 0 0 0 0 0 0 0
## 160 0 0 0 0 0 0 0
## 161 0 0 0 0 0 0 0
## 162 0 0 0 0 0 0 0
## 163 0 0 0 0 0 0 0
## 164 0 0 0 0 0 0 0
## 165 0 0 0 0 0 0 0
## 166 0 0 0 0 0 0 0
## 167 0 0 0 0 0 0 0
## 168 0 0 0 0 0 0 0
## 169 0 0 0 0 0 0 0
## 170 0 0 0 0 0 0 0
## 171 0 0 0 0 0 0 0
## 172 0 0 0 0 0 0 0
## 173 0 0 0 0 0 0 0
## 174 0 0 0 0 0 0 0
## 175 0 0 0 0 0 0 0
## 176 0 0 0 0 0 0 0
## 177 0 0 0 0 0 0 0
## 178 0 0 0 0 0 0 0
## 179 0 0 0 0 0 0 0
## 180 0 0 0 0 0 0 0
## 181 0 0 0 0 0 0 0
## 182 0 0 0 0 0 0 0
## 183 0 0 0 0 0 0 0
## 184 0 0 0 0 0 0 0
## 185 0 0 0 0 0 0 0
## 186 0 0 0 0 0 0 0
## 187 0 0 0 0 0 0 0
## 188 0 0 0 0 0 0 0
## 189 0 0 0 0 0 0 0
## 190 0 0 0 0 0 0 0
## 191 0 0 0 0 0 0 0
## 192 0 0 0 0 0 0 0
## 193 0 0 0 0 0 0 0
## 194 0 0 0 0 0 0 0
## 195 0 0 0 0 0 0 0
## 196 0 0 0 0 0 0 0
## 197 0 0 0 0 0 0 0
## 198 0 0 0 0 0 0 0
## 199 0 0 0 0 0 0 0
## 200 0 0 0 0 0 0 0
## 201 0 0 0 0 0 0 0
## 202 0 0 0 0 0 0 0
## 203 0 0 0 0 0 0 0
## 204 0 0 0 0 0 0 0
## 205 0 0 0 0 0 0 0
## 206 0 0 0 0 0 0 0
## 207 0 0 0 0 0 0 0
## 208 0 0 0 0 0 0 0
## 209 0 0 0 0 0 0 0
## 210 0 0 0 0 0 0 0
## 211 0 0 0 0 0 0 0
## 212 0 0 0 0 0 0 0
## 213 0 0 0 0 0 0 0
## 214 0 0 0 0 0 0 0
## 215 0 0 0 0 0 0 0
## 216 0 0 0 0 0 0 0
## 217 0 0 0 0 0 0 0
## 218 0 0 0 0 0 0 0
## 219 0 0 0 0 0 0 0
## 220 0 0 0 0 0 0 0
## 221 0 0 0 0 0 0 0
## 222 0 0 0 0 0 0 0
## 223 0 0 0 0 0 0 0
## 224 0 0 0 0 0 0 0
## 225 0 0 0 0 0 0 0
## 226 0 0 0 0 0 0 0
## 227 0 0 0 0 0 0 0
## 228 0 0 0 0 0 0 0
## 229 0 0 0 0 0 0 0
## 230 0 0 0 0 0 0 0
## 231 0 0 0 0 0 0 0
## Jab3m.X2 Kick3m.X2 upper3m.X1 upper3m.X2 takedown3m.X1 takedown3m.X2
## 1 0 0 0 0 0 0
## 2 0 0 0 0 0 0
## 3 0 0 0 0 0 0
## 4 0 0 0 0 0 0
## 5 0 0 0 0 0 0
## 6 0 0 0 0 0 0
## 7 0 0 0 0 0 0
## 8 0 0 0 0 0 0
## 9 0 0 0 0 0 0
## 10 0 0 0 0 0 0
## 11 0 0 0 0 0 0
## 12 0 0 0 0 0 0
## 13 0 0 0 0 0 0
## 14 0 0 0 0 0 0
## 15 0 0 0 0 0 0
## 16 0 0 0 0 0 0
## 17 0 0 0 0 0 0
## 18 0 0 0 0 0 0
## 19 0 0 0 0 0 0
## 20 0 0 0 0 0 0
## 21 0 0 0 0 0 0
## 22 0 0 0 0 0 0
## 23 0 0 0 0 0 0
## 24 0 0 0 0 0 0
## 25 0 0 0 0 0 0
## 26 0 0 0 0 0 0
## 27 0 0 0 0 0 0
## 28 0 0 0 0 0 0
## 29 0 0 0 0 0 0
## 30 0 0 0 0 0 0
## 31 0 0 0 0 0 0
## 32 0 0 0 0 0 0
## 33 0 0 0 0 0 0
## 34 0 0 0 0 0 0
## 35 0 0 0 0 0 0
## 36 0 0 0 0 0 0
## 37 0 0 0 0 0 0
## 38 0 0 0 0 0 0
## 39 0 0 0 0 0 0
## 40 0 0 0 0 0 0
## 41 0 0 0 0 0 0
## 42 0 0 0 0 0 0
## 43 0 0 0 0 0 0
## 44 0 0 0 0 0 0
## 45 0 0 0 0 0 0
## 46 0 0 0 0 0 0
## 47 0 0 0 0 0 0
## 48 0 0 0 0 0 0
## 49 0 0 0 0 0 0
## 50 0 0 0 0 0 0
## 51 0 0 0 0 0 0
## 52 0 0 0 0 0 0
## 53 0 0 0 0 0 0
## 54 0 0 0 0 0 0
## 55 0 0 0 0 0 0
## 56 0 0 0 0 0 0
## 57 0 0 0 0 0 0
## 58 0 0 0 0 0 0
## 59 0 0 0 0 0 0
## 60 0 0 0 0 0 0
## 61 0 0 0 0 0 0
## 62 0 0 0 0 0 0
## 63 0 0 0 0 0 0
## 64 0 0 0 0 0 0
## 65 0 0 0 0 0 0
## 66 0 0 0 0 0 0
## 67 0 0 0 0 0 0
## 68 0 0 0 0 0 0
## 69 0 0 0 0 0 0
## 70 0 0 0 0 0 0
## 71 0 0 0 0 0 0
## 72 0 0 0 0 0 0
## 73 0 0 0 0 0 0
## 74 0 0 0 0 0 0
## 75 0 0 0 0 0 0
## 76 0 0 0 0 0 0
## 77 0 0 0 0 0 0
## 78 0 0 0 0 0 0
## 79 0 0 0 0 0 0
## 80 0 0 0 0 0 0
## 81 0 0 0 0 0 0
## 82 0 0 0 0 0 0
## 83 0 0 0 0 0 0
## 84 0 0 0 0 0 0
## 85 0 0 0 0 0 0
## 86 0 0 0 0 0 0
## 87 0 0 0 0 0 0
## 88 0 0 0 0 0 0
## 89 0 0 0 0 0 0
## 90 0 0 0 0 0 0
## 91 0 0 0 0 0 0
## 92 0 0 0 0 0 0
## 93 0 0 0 0 0 0
## 94 0 0 0 0 0 0
## 95 0 0 0 0 0 0
## 96 0 0 0 0 0 0
## 97 0 0 0 0 0 0
## 98 0 0 0 0 0 0
## 99 0 0 0 0 0 0
## 100 0 0 0 0 0 0
## 101 0 0 0 0 0 0
## 102 0 0 0 0 0 0
## 103 0 0 0 0 0 0
## 104 0 0 0 0 0 0
## 105 0 0 0 0 0 0
## 106 0 0 0 0 0 0
## 107 0 0 0 0 0 0
## 108 0 0 0 0 0 0
## 109 0 0 0 0 0 0
## 110 0 0 0 0 0 0
## 111 0 0 0 0 0 0
## 112 0 0 0 0 0 0
## 113 0 0 0 0 0 0
## 114 0 0 0 0 0 0
## 115 0 0 0 0 0 0
## 116 0 0 0 0 0 0
## 117 0 0 0 0 0 0
## 118 0 0 0 0 0 0
## 119 0 0 0 0 0 0
## 120 0 0 0 0 0 0
## 121 0 0 0 0 0 0
## 122 0 0 0 0 0 0
## 123 0 0 0 0 0 0
## 124 0 0 0 0 0 0
## 125 0 0 0 0 0 0
## 126 0 0 0 0 0 0
## 127 0 0 0 0 0 0
## 128 0 0 0 0 0 0
## 129 0 0 0 0 0 0
## 130 0 0 0 0 0 0
## 131 0 0 0 0 0 0
## 132 0 0 0 0 0 0
## 133 0 0 0 0 0 0
## 134 0 0 0 0 0 0
## 135 0 0 0 0 0 0
## 136 0 0 0 0 0 0
## 137 0 0 0 0 0 0
## 138 0 0 0 0 0 0
## 139 0 0 0 0 0 0
## 140 0 0 0 0 0 0
## 141 0 0 0 0 0 0
## 142 0 0 0 0 0 0
## 143 0 0 0 0 0 0
## 144 0 0 0 0 0 0
## 145 0 0 0 0 0 0
## 146 0 0 0 0 0 0
## 147 0 0 0 0 0 0
## 148 0 0 0 0 0 0
## 149 0 0 0 0 0 0
## 150 0 0 0 0 0 0
## 151 0 0 0 0 0 0
## 152 0 0 0 0 0 0
## 153 0 0 0 0 0 0
## 154 0 0 0 0 0 0
## 155 0 0 0 0 0 0
## 156 0 0 0 0 0 0
## 157 0 0 0 0 0 0
## 158 0 0 0 0 0 0
## 159 0 0 0 0 0 0
## 160 0 0 0 0 0 0
## 161 0 0 0 0 0 0
## 162 0 0 0 0 0 0
## 163 0 0 0 0 0 0
## 164 0 0 0 0 0 0
## 165 0 0 0 0 0 0
## 166 0 0 0 0 0 0
## 167 0 0 0 0 0 0
## 168 0 0 0 0 0 0
## 169 0 0 0 0 0 0
## 170 0 0 0 0 0 0
## 171 0 0 0 0 0 0
## 172 0 0 0 0 0 0
## 173 0 0 0 0 0 0
## 174 0 0 0 0 0 0
## 175 0 0 0 0 0 0
## 176 0 0 0 0 0 0
## 177 0 0 0 0 0 0
## 178 0 0 0 0 0 0
## 179 0 0 0 0 0 0
## 180 0 0 0 0 0 0
## 181 0 0 0 0 0 0
## 182 0 0 0 0 0 0
## 183 0 0 0 0 0 0
## 184 0 0 0 0 0 0
## 185 0 0 0 0 0 0
## 186 0 0 0 0 0 0
## 187 0 0 0 0 0 0
## 188 0 0 0 0 0 0
## 189 0 0 0 0 0 0
## 190 0 0 0 0 0 0
## 191 0 0 0 0 0 0
## 192 0 0 0 0 0 0
## 193 0 0 0 0 0 0
## 194 0 0 0 0 0 0
## 195 0 0 0 0 0 0
## 196 0 0 0 0 0 0
## 197 0 0 0 0 0 0
## 198 0 0 0 0 0 0
## 199 0 0 0 0 0 0
## 200 0 0 0 0 0 0
## 201 0 0 0 0 0 0
## 202 0 0 0 0 0 0
## 203 0 0 0 0 0 0
## 204 0 0 0 0 0 0
## 205 0 0 0 0 0 0
## 206 0 0 0 0 0 0
## 207 0 0 0 0 0 0
## 208 0 0 0 0 0 0
## 209 0 0 0 0 0 0
## 210 0 0 0 0 0 0
## 211 0 0 0 0 0 0
## 212 0 0 0 0 0 0
## 213 0 0 0 0 0 0
## 214 0 0 0 0 0 0
## 215 0 0 0 0 0 0
## 216 0 0 0 0 0 0
## 217 0 0 0 0 0 0
## 218 0 0 0 0 0 0
## 219 0 0 0 0 0 0
## 220 0 0 0 0 0 0
## 221 0 0 0 0 0 0
## 222 0 0 0 0 0 0
## 223 0 0 0 0 0 0
## 224 0 0 0 0 0 0
## 225 0 0 0 0 0 0
## 226 0 0 0 0 0 0
## 227 0 0 0 0 0 0
## 228 0 0 0 0 0 0
## 229 0 0 0 0 0 0
## 230 0 0 0 0 0 0
## 231 0 0 0 0 0 0
## hammer3m.X1 hammer3m.X2 Crossr.X1 Kneer.X1 Elbowr.X1 Hookr.X1 Jabr.X1
## 1 0 0 0 0 0 0 0
## 2 0 0 0 0 0 0 0
## 3 0 0 0 0 0 0 0
## 4 0 0 0 0 0 0 0
## 5 0 0 0 0 0 0 0
## 6 0 0 0 0 0 0 0
## 7 0 0 0 0 0 0 0
## 8 0 0 0 0 0 0 0
## 9 0 0 0 0 0 0 0
## 10 0 0 0 0 0 0 0
## 11 0 0 0 0 0 0 0
## 12 0 0 0 0 0 0 0
## 13 0 0 0 0 0 0 0
## 14 0 0 0 0 0 0 0
## 15 0 0 0 0 0 0 0
## 16 0 0 0 0 0 0 0
## 17 0 0 0 0 0 0 0
## 18 0 0 0 0 0 0 0
## 19 0 0 0 0 0 0 0
## 20 0 0 0 0 0 0 0
## 21 0 0 0 0 0 0 0
## 22 0 0 0 0 0 0 0
## 23 0 0 0 0 0 0 0
## 24 0 0 0 0 0 0 0
## 25 0 0 0 0 0 0 0
## 26 0 0 0 0 0 0 0
## 27 0 0 0 0 0 0 0
## 28 0 0 0 0 0 0 0
## 29 0 0 0 0 0 0 0
## 30 0 0 0 0 0 0 0
## 31 0 0 0 0 0 0 0
## 32 0 0 0 0 0 0 0
## 33 0 0 0 0 0 0 0
## 34 0 0 0 0 0 0 0
## 35 0 0 0 0 0 0 0
## 36 0 0 0 0 0 0 0
## 37 0 0 0 0 0 0 0
## 38 0 0 0 0 0 0 0
## 39 0 0 0 0 0 0 0
## 40 0 0 0 0 0 0 0
## 41 0 0 0 0 0 0 0
## 42 0 0 0 0 0 0 0
## 43 0 0 0 0 0 0 0
## 44 0 0 0 0 0 0 0
## 45 0 0 0 0 0 0 0
## 46 0 0 0 0 0 0 0
## 47 0 0 0 0 0 0 0
## 48 0 0 0 0 0 0 0
## 49 0 0 0 0 0 0 0
## 50 0 0 0 0 0 0 0
## 51 0 0 0 0 0 0 0
## 52 0 0 0 0 0 0 0
## 53 0 0 0 0 0 0 0
## 54 0 0 0 0 0 0 0
## 55 0 0 0 0 0 0 0
## 56 0 0 0 0 0 0 0
## 57 0 0 0 0 0 0 0
## 58 0 0 0 1 0 0 0
## 59 0 0 0 1 0 0 0
## 60 0 0 0 0 0 0 0
## 61 0 0 0 1 0 0 0
## 62 0 0 0 0 0 0 0
## 63 0 0 0 1 0 0 0
## 64 0 0 0 0 0 0 0
## 65 0 0 0 0 0 0 0
## 66 0 0 0 1 0 0 0
## 67 0 0 0 0 0 0 0
## 68 0 0 0 0 0 0 0
## 69 0 0 0 0 0 0 0
## 70 0 0 0 0 0 0 0
## 71 0 0 0 0 0 0 0
## 72 0 0 0 0 0 0 0
## 73 0 0 0 0 0 0 0
## 74 0 0 0 0 0 0 0
## 75 0 0 0 0 0 0 0
## 76 0 0 0 0 0 0 0
## 77 0 0 0 0 0 0 0
## 78 0 0 0 0 0 0 0
## 79 0 0 0 0 0 0 0
## 80 0 0 0 0 0 0 0
## 81 0 0 0 0 0 0 0
## 82 0 0 0 0 0 0 0
## 83 0 0 0 0 0 0 0
## 84 0 0 0 0 0 0 0
## 85 0 0 0 0 0 0 0
## 86 0 0 0 0 0 0 0
## 87 0 0 0 0 0 0 0
## 88 0 0 0 0 0 0 0
## 89 0 0 0 0 0 0 0
## 90 0 0 0 0 0 0 0
## 91 0 0 0 0 0 0 0
## 92 0 0 0 0 0 0 0
## 93 0 0 0 0 0 0 0
## 94 0 0 0 0 0 0 0
## 95 0 0 0 0 0 0 0
## 96 0 0 0 0 0 0 0
## 97 0 0 0 0 0 0 0
## 98 0 0 0 0 0 0 0
## 99 0 0 0 0 0 0 0
## 100 0 0 0 0 0 0 0
## 101 0 0 0 0 0 0 0
## 102 0 0 0 0 0 0 0
## 103 0 0 0 0 0 0 0
## 104 0 0 0 0 0 0 0
## 105 0 0 0 0 0 0 0
## 106 0 0 0 0 0 0 0
## 107 0 0 0 0 0 0 0
## 108 0 0 0 0 0 0 0
## 109 0 0 0 0 0 0 0
## 110 0 0 0 0 0 0 0
## 111 0 0 0 0 0 0 0
## 112 0 0 0 0 0 0 0
## 113 0 0 0 0 0 0 0
## 114 0 0 0 0 0 0 0
## 115 0 0 0 0 0 0 0
## 116 0 0 0 0 0 0 0
## 117 0 0 0 0 0 0 0
## 118 0 0 0 0 0 0 0
## 119 0 0 0 0 0 0 0
## 120 0 0 0 0 0 0 0
## 121 0 0 0 0 0 0 0
## 122 0 0 0 0 0 0 0
## 123 0 0 0 0 0 0 0
## 124 0 0 0 0 0 0 0
## 125 0 0 0 0 0 0 0
## 126 0 0 0 0 0 0 0
## 127 0 0 0 0 0 0 0
## 128 0 0 0 0 0 0 0
## 129 0 0 0 0 0 0 0
## 130 0 0 0 0 0 0 0
## 131 0 0 0 0 0 0 0
## 132 0 0 0 0 0 0 0
## 133 0 0 0 0 0 0 0
## 134 0 0 0 0 0 0 0
## 135 0 0 0 0 0 0 0
## 136 0 0 0 0 0 0 0
## 137 0 0 0 0 0 0 0
## 138 0 0 0 0 0 0 0
## 139 0 0 0 0 0 0 0
## 140 0 0 0 0 0 0 0
## 141 0 0 0 0 0 0 0
## 142 0 0 0 0 0 0 0
## 143 0 0 0 0 0 0 0
## 144 0 0 0 0 0 0 0
## 145 0 0 0 0 0 0 0
## 146 0 0 0 0 0 0 0
## 147 0 0 0 0 0 0 0
## 148 0 0 0 0 0 0 0
## 149 0 0 0 0 0 0 0
## 150 0 0 0 0 0 0 0
## 151 0 0 0 0 0 0 0
## 152 0 0 0 0 0 0 0
## 153 0 0 0 0 0 0 0
## 154 0 0 0 0 0 0 0
## 155 0 0 0 0 0 0 0
## 156 0 0 0 0 0 0 0
## 157 0 0 0 0 0 0 0
## 158 0 0 0 0 0 0 0
## 159 0 0 0 0 0 0 0
## 160 0 0 0 0 0 0 0
## 161 0 0 0 0 0 0 0
## 162 0 0 0 0 0 0 0
## 163 0 0 0 0 0 0 0
## 164 0 0 0 0 0 0 0
## 165 0 0 0 0 0 0 0
## 166 0 0 0 0 0 0 0
## 167 0 0 0 0 0 0 0
## 168 0 0 0 0 0 0 0
## 169 0 0 0 0 0 0 0
## 170 0 0 0 0 0 0 0
## 171 0 0 0 0 0 0 0
## 172 0 0 0 0 0 0 0
## 173 0 0 0 0 0 0 0
## 174 0 0 0 0 0 0 0
## 175 0 0 0 0 0 0 0
## 176 0 0 0 0 0 0 0
## 177 0 0 0 0 0 0 0
## 178 0 0 0 0 0 0 0
## 179 0 0 0 0 0 0 0
## 180 0 0 0 0 0 0 0
## 181 0 0 0 0 0 0 0
## 182 0 0 0 0 0 0 0
## 183 0 0 0 0 0 0 0
## 184 0 0 0 0 0 0 0
## 185 0 0 0 0 0 0 0
## 186 0 0 0 0 0 0 0
## 187 0 0 0 0 0 0 0
## 188 0 0 0 0 0 0 0
## 189 0 0 0 0 0 0 0
## 190 0 0 0 0 0 0 0
## 191 0 0 0 0 0 0 0
## 192 0 0 0 0 0 0 0
## 193 0 0 0 0 0 0 0
## 194 0 0 0 0 0 0 0
## 195 0 0 0 0 0 0 0
## 196 0 0 0 0 0 0 0
## 197 0 0 0 0 0 0 0
## 198 0 0 0 0 0 0 0
## 199 0 0 0 0 0 0 0
## 200 0 0 0 0 0 0 0
## 201 0 0 0 0 0 0 0
## 202 0 0 0 0 0 0 0
## 203 0 0 0 0 0 0 0
## 204 0 0 0 0 0 0 0
## 205 0 0 0 0 0 0 0
## 206 0 0 0 0 0 0 0
## 207 0 0 0 0 0 0 0
## 208 0 0 0 0 0 0 0
## 209 0 0 0 0 0 0 0
## 210 0 0 0 0 0 0 0
## 211 0 0 0 0 0 0 0
## 212 0 0 0 0 0 0 0
## 213 0 0 0 0 0 0 0
## 214 0 0 0 0 0 0 0
## 215 0 0 0 0 0 0 0
## 216 0 0 0 0 0 0 0
## 217 0 0 0 0 0 0 0
## 218 0 0 0 0 0 0 0
## 219 0 0 0 0 0 0 0
## 220 0 0 0 0 0 0 0
## 221 0 0 0 0 0 0 0
## 222 0 0 0 0 0 0 0
## 223 0 0 0 0 0 0 0
## 224 0 0 0 0 0 0 0
## 225 0 0 0 0 0 0 0
## 226 0 0 0 0 0 0 0
## 227 0 0 0 0 0 0 0
## 228 0 0 0 0 0 0 0
## 229 0 0 0 0 0 0 0
## 230 0 0 0 0 0 0 0
## 231 0 0 0 0 0 0 0
## Kickr.X1 Crossr.X2 Kneer.X2 Elbowr.X2 Hookr.X2 Jabr.X2 Kickr.X2 upperr.X1
## 1 0 0 0 0 0 0 0 0
## 2 0 0 0 0 0 0 0 0
## 3 0 0 0 0 0 0 0 0
## 4 0 0 0 0 0 0 0 0
## 5 0 0 0 0 0 0 1 0
## 6 1 0 0 0 0 0 0 0
## 7 0 0 0 0 0 0 1 0
## 8 1 0 0 0 0 0 0 0
## 9 0 0 0 0 0 0 0 0
## 10 0 0 0 0 0 0 0 0
## 11 0 0 0 0 0 0 0 0
## 12 0 0 0 0 0 0 0 0
## 13 0 0 0 0 0 0 0 0
## 14 0 0 0 0 0 0 1 0
## 15 0 0 0 0 0 0 0 0
## 16 0 0 0 0 0 0 0 0
## 17 0 0 0 0 0 0 0 0
## 18 0 0 0 0 0 0 0 0
## 19 0 0 0 0 0 0 0 0
## 20 0 0 0 0 0 0 0 0
## 21 0 0 0 0 0 0 0 0
## 22 0 0 0 0 0 0 0 0
## 23 0 0 0 0 0 0 0 0
## 24 0 0 0 0 0 0 0 0
## 25 0 0 0 0 0 0 0 0
## 26 0 0 0 0 0 0 0 0
## 27 0 0 0 0 0 0 0 0
## 28 0 0 0 0 0 0 0 0
## 29 0 0 0 0 0 0 0 0
## 30 0 0 0 0 0 0 0 0
## 31 0 0 0 0 0 0 0 0
## 32 0 0 0 0 0 0 0 0
## 33 0 1 1 0 0 0 0 0
## 34 0 1 0 0 0 0 0 0
## 35 0 0 0 0 0 0 0 0
## 36 0 0 0 0 0 0 0 0
## 37 0 1 0 0 0 0 0 0
## 38 0 0 0 0 0 0 0 0
## 39 0 0 0 0 0 0 0 0
## 40 0 0 0 0 0 0 0 0
## 41 0 0 0 0 0 0 0 0
## 42 0 0 0 0 0 0 0 0
## 43 0 0 0 0 0 0 0 0
## 44 0 0 0 0 0 0 0 0
## 45 0 0 0 0 0 0 0 0
## 46 0 0 0 0 0 0 0 0
## 47 0 0 0 0 0 0 0 0
## 48 0 0 0 0 0 0 0 0
## 49 0 0 0 0 0 0 0 0
## 50 0 0 0 0 0 0 0 0
## 51 0 0 0 0 0 0 0 0
## 52 0 0 0 0 0 0 0 1
## 53 0 0 0 0 0 0 0 0
## 54 0 0 0 0 0 0 0 0
## 55 0 0 0 0 0 0 0 0
## 56 0 0 0 0 0 0 0 0
## 57 0 0 0 0 0 0 0 0
## 58 0 0 0 0 0 0 0 1
## 59 0 0 0 0 0 0 0 1
## 60 0 0 0 0 0 0 0 0
## 61 0 0 0 0 0 0 0 1
## 62 0 0 0 0 0 0 0 0
## 63 0 0 0 0 0 0 0 1
## 64 0 0 0 0 0 0 0 0
## 65 0 0 0 0 0 0 0 0
## 66 0 0 0 0 0 0 0 1
## 67 0 0 0 0 0 0 0 0
## 68 0 0 0 0 0 0 0 0
## 69 0 0 0 0 0 0 0 0
## 70 0 0 0 0 0 0 0 0
## 71 0 0 0 0 0 0 0 0
## 72 0 0 0 0 0 0 0 0
## 73 0 0 0 0 0 0 0 0
## 74 0 0 0 0 0 0 0 0
## 75 0 0 0 0 0 0 0 0
## 76 0 0 0 0 0 0 0 0
## 77 0 0 0 0 0 0 0 0
## 78 0 0 0 0 0 0 0 0
## 79 0 0 0 0 0 0 0 0
## 80 0 0 0 0 0 0 0 0
## 81 0 0 0 0 0 0 0 0
## 82 0 0 0 0 0 0 0 0
## 83 0 0 0 0 0 0 0 0
## 84 0 0 0 0 0 0 0 0
## 85 0 0 0 0 0 0 0 0
## 86 0 1 0 0 0 0 0 0
## 87 0 1 0 0 0 0 0 0
## 88 0 1 0 0 0 0 0 0
## 89 0 0 0 0 0 0 0 0
## 90 0 0 0 0 0 0 0 0
## 91 0 0 0 0 0 0 0 0
## 92 0 1 0 0 0 0 0 0
## 93 0 1 0 0 0 0 0 0
## 94 0 0 0 0 0 0 0 0
## 95 0 0 0 0 0 0 0 0
## 96 0 0 0 0 0 0 0 0
## 97 0 0 0 0 0 0 0 0
## 98 0 0 0 0 0 0 0 0
## 99 0 0 0 0 0 0 0 0
## 100 0 0 0 0 0 0 0 0
## 101 0 0 0 0 0 0 0 0
## 102 0 0 0 0 0 0 0 0
## 103 0 1 0 0 0 0 0 0
## 104 0 1 0 0 0 0 0 0
## 105 0 0 0 0 0 0 0 0
## 106 0 0 0 0 0 0 0 0
## 107 0 0 0 0 0 0 0 0
## 108 0 0 0 0 0 0 0 0
## 109 0 0 0 0 0 0 0 0
## 110 0 0 0 0 0 0 0 0
## 111 0 0 0 0 0 0 0 0
## 112 0 0 0 0 0 0 0 0
## 113 0 0 0 0 0 0 0 0
## 114 0 0 0 0 0 0 0 0
## 115 0 0 0 0 0 0 0 0
## 116 0 0 0 0 0 0 0 0
## 117 0 0 0 0 0 0 0 0
## 118 0 0 0 0 0 0 0 0
## 119 0 0 0 0 0 0 0 0
## 120 0 0 0 0 0 0 0 0
## 121 0 0 0 0 0 0 0 0
## 122 0 0 0 0 0 0 0 0
## 123 0 0 0 0 0 0 0 0
## 124 0 0 0 1 0 0 0 0
## 125 0 0 0 0 0 0 0 0
## 126 0 0 0 0 0 0 0 0
## 127 0 0 0 0 0 0 0 0
## 128 0 0 0 0 0 0 0 0
## 129 0 0 0 0 0 0 0 0
## 130 0 0 0 0 0 0 0 0
## 131 0 0 0 0 0 0 0 0
## 132 0 1 0 0 0 0 0 0
## 133 0 0 0 0 0 0 0 0
## 134 0 1 0 0 0 0 0 0
## 135 0 0 0 0 0 0 0 0
## 136 0 0 0 0 0 0 0 0
## 137 0 0 0 0 0 0 0 0
## 138 0 0 0 0 0 0 0 0
## 139 0 0 0 0 0 0 0 0
## 140 0 0 0 0 0 0 0 0
## 141 0 0 0 0 0 0 0 0
## 142 0 0 0 0 0 0 0 0
## 143 0 0 0 0 0 0 0 0
## 144 0 0 0 0 0 0 0 0
## 145 0 0 0 0 0 0 0 0
## 146 0 0 0 0 0 0 0 0
## 147 0 0 0 0 0 0 0 0
## 148 0 0 0 0 0 0 0 0
## 149 0 0 0 0 0 0 0 0
## 150 0 1 0 0 0 0 0 0
## 151 0 1 0 0 0 0 0 0
## 152 0 1 0 0 0 0 0 0
## 153 0 1 0 0 0 0 0 0
## 154 0 0 0 0 0 0 0 0
## 155 0 1 0 0 0 0 0 0
## 156 0 1 0 0 0 0 0 0
## 157 0 0 0 0 0 0 0 0
## 158 0 0 0 0 0 0 0 0
## 159 0 0 0 0 0 0 0 0
## 160 0 1 0 0 0 0 0 0
## 161 0 0 0 0 0 0 0 0
## 162 0 1 0 0 0 0 0 0
## 163 0 1 0 0 0 0 0 0
## 164 0 1 0 0 0 0 0 0
## 165 0 1 0 0 0 0 0 0
## 166 0 0 0 0 0 0 0 0
## 167 0 1 0 0 0 0 0 0
## 168 0 0 0 0 0 0 0 0
## 169 0 0 0 0 0 0 0 0
## 170 0 0 0 0 0 0 0 0
## 171 0 0 0 0 0 0 0 0
## 172 0 0 0 0 0 0 0 0
## 173 0 0 0 0 0 0 0 0
## 174 0 1 0 0 0 0 0 0
## 175 0 0 0 0 1 0 0 0
## 176 0 0 0 0 0 0 0 0
## 177 0 0 0 0 0 0 0 0
## 178 0 0 0 0 0 0 0 0
## 179 0 0 0 0 0 0 0 0
## 180 0 0 0 0 0 0 0 0
## 181 0 0 0 0 0 0 0 0
## 182 0 0 0 0 0 0 0 0
## 183 0 0 0 0 0 0 0 0
## 184 0 0 0 0 0 0 0 0
## 185 0 0 0 0 0 0 0 0
## 186 0 0 0 0 0 0 0 0
## 187 0 0 0 0 0 0 0 0
## 188 0 0 0 0 0 0 0 0
## 189 0 0 0 0 0 0 0 0
## 190 0 0 0 0 0 0 0 0
## 191 0 0 0 0 0 0 0 0
## 192 0 0 0 0 0 0 0 0
## 193 0 0 0 0 0 0 0 0
## 194 0 0 0 0 0 0 0 0
## 195 0 0 0 0 0 0 0 0
## 196 0 0 0 0 0 0 0 0
## 197 0 0 0 0 0 0 0 0
## 198 0 0 0 0 0 0 0 0
## 199 0 0 0 0 0 0 0 0
## 200 0 0 0 0 0 0 0 0
## 201 0 0 0 0 0 0 0 0
## 202 0 0 0 0 0 0 0 0
## 203 0 0 0 0 0 0 0 0
## 204 0 0 0 0 0 0 0 0
## 205 0 0 0 0 0 0 0 0
## 206 0 0 0 0 0 0 0 0
## 207 0 0 0 0 0 0 0 0
## 208 0 0 0 0 0 0 0 0
## 209 0 0 0 0 0 0 0 0
## 210 0 0 0 0 0 0 0 0
## 211 0 0 0 1 0 0 0 0
## 212 0 0 0 0 0 0 0 0
## 213 0 0 0 0 0 0 0 0
## 214 0 0 0 0 0 0 0 0
## 215 0 0 0 0 0 0 0 0
## 216 0 0 0 0 0 0 0 0
## 217 0 0 0 0 0 0 0 0
## 218 0 0 0 0 0 0 0 0
## 219 0 0 0 0 0 0 0 0
## 220 0 0 0 0 0 0 0 0
## 221 0 0 0 0 0 0 0 0
## 222 0 0 0 0 0 0 0 0
## 223 0 0 0 0 0 0 0 0
## 224 0 0 0 0 0 0 0 0
## 225 0 0 0 0 0 0 0 0
## 226 0 0 0 0 0 0 0 0
## 227 0 0 0 0 0 0 0 0
## 228 0 0 0 0 0 0 0 0
## 229 0 0 0 0 0 0 0 0
## 230 0 0 0 0 0 0 0 0
## 231 0 0 0 0 0 0 0 0
## upperr.X2 takedownr.X1 takedownr.X2 hammerr.X1 hammerr.X2 Cross2r.X1
## 1 0 0 0 0 0 0
## 2 0 0 0 0 0 0
## 3 0 0 0 0 0 0
## 4 0 0 0 0 0 0
## 5 0 0 0 0 0 0
## 6 0 0 0 0 0 0
## 7 0 0 0 0 0 0
## 8 0 0 0 0 0 0
## 9 0 0 0 0 0 0
## 10 0 0 0 0 0 0
## 11 0 0 0 0 0 0
## 12 0 0 0 0 0 0
## 13 0 0 0 0 0 0
## 14 0 0 0 0 0 0
## 15 0 0 0 0 0 0
## 16 0 0 0 0 0 0
## 17 0 0 0 0 0 0
## 18 0 0 0 0 0 0
## 19 0 0 0 0 0 0
## 20 0 0 1 0 0 0
## 21 0 0 0 0 0 0
## 22 0 0 0 0 0 0
## 23 0 0 0 0 0 0
## 24 0 0 0 0 0 0
## 25 0 0 0 0 0 0
## 26 0 0 0 0 0 0
## 27 0 0 0 0 0 0
## 28 0 0 0 0 0 0
## 29 0 0 0 0 0 0
## 30 0 0 0 0 0 0
## 31 0 0 0 0 0 0
## 32 0 0 0 0 0 0
## 33 0 0 0 0 0 0
## 34 0 0 0 0 0 0
## 35 0 0 0 0 0 0
## 36 0 0 0 0 0 0
## 37 0 0 0 0 0 0
## 38 0 0 0 0 0 0
## 39 0 0 0 0 0 0
## 40 0 0 0 0 0 0
## 41 0 0 0 0 0 0
## 42 0 0 0 0 0 0
## 43 0 0 0 0 0 0
## 44 0 0 0 0 0 0
## 45 0 0 0 0 0 0
## 46 0 0 0 0 0 0
## 47 0 0 0 0 0 0
## 48 0 0 0 0 0 0
## 49 0 0 0 0 0 0
## 50 0 0 0 0 0 0
## 51 0 0 0 0 0 0
## 52 0 0 0 0 0 0
## 53 0 0 0 0 0 0
## 54 0 0 0 0 0 0
## 55 0 0 0 0 0 0
## 56 0 0 0 0 0 0
## 57 0 0 0 0 0 0
## 58 0 0 0 0 0 0
## 59 0 0 0 0 0 0
## 60 0 0 0 0 0 0
## 61 0 0 0 0 0 0
## 62 0 0 0 0 0 0
## 63 0 0 0 0 0 0
## 64 0 0 0 0 0 0
## 65 0 0 0 0 0 0
## 66 0 0 0 0 0 0
## 67 0 0 0 0 0 0
## 68 0 0 0 0 0 0
## 69 0 0 0 0 0 0
## 70 0 0 0 0 0 0
## 71 0 0 0 0 0 0
## 72 0 0 0 0 0 0
## 73 0 0 0 0 0 0
## 74 0 0 0 0 0 0
## 75 0 0 0 0 0 0
## 76 0 0 0 0 0 0
## 77 0 0 0 0 0 0
## 78 0 0 0 0 0 0
## 79 0 0 0 0 0 0
## 80 0 0 0 0 0 0
## 81 0 0 0 0 0 0
## 82 0 0 0 0 0 0
## 83 0 0 1 0 0 0
## 84 0 0 1 0 0 0
## 85 0 0 0 0 0 0
## 86 0 0 0 0 0 0
## 87 0 0 0 0 0 0
## 88 0 0 0 0 0 0
## 89 0 0 0 0 0 0
## 90 0 0 0 0 0 0
## 91 0 0 0 0 0 0
## 92 0 0 0 0 0 0
## 93 0 0 0 0 0 0
## 94 0 0 0 0 0 0
## 95 0 0 0 0 0 0
## 96 0 0 0 0 0 0
## 97 0 0 0 0 0 0
## 98 0 0 0 0 0 0
## 99 0 0 0 0 0 0
## 100 0 0 0 0 0 0
## 101 0 0 0 0 0 0
## 102 0 0 0 0 0 0
## 103 0 0 0 0 0 0
## 104 0 0 0 0 0 0
## 105 0 0 0 0 0 0
## 106 0 0 0 0 0 0
## 107 0 0 0 0 0 0
## 108 0 0 0 0 0 0
## 109 0 0 0 0 0 0
## 110 0 0 0 0 0 0
## 111 0 0 0 0 0 0
## 112 0 0 0 0 0 0
## 113 0 0 0 0 0 0
## 114 0 0 0 0 0 0
## 115 0 0 0 0 0 0
## 116 0 0 0 0 0 0
## 117 0 0 0 0 0 0
## 118 0 0 0 0 0 0
## 119 0 0 0 0 0 0
## 120 0 0 0 0 0 0
## 121 0 0 0 0 0 0
## 122 0 0 0 0 0 0
## 123 0 0 0 0 0 0
## 124 0 0 0 0 0 0
## 125 0 0 0 0 0 0
## 126 0 0 0 0 0 0
## 127 0 0 0 0 0 0
## 128 0 0 0 0 0 0
## 129 0 0 0 0 0 0
## 130 0 0 0 0 0 0
## 131 0 0 0 0 0 0
## 132 0 0 0 0 0 0
## 133 0 0 0 0 0 0
## 134 0 0 0 0 0 0
## 135 0 0 0 0 0 0
## 136 0 0 0 0 0 0
## 137 0 0 0 0 0 0
## 138 0 0 0 0 0 0
## 139 0 0 0 0 0 0
## 140 0 0 0 0 0 0
## 141 0 0 0 0 0 0
## 142 0 0 0 0 0 0
## 143 0 0 0 0 0 0
## 144 0 0 0 0 0 0
## 145 0 0 0 0 0 0
## 146 0 0 0 0 0 0
## 147 0 0 0 0 0 0
## 148 0 0 0 0 0 0
## 149 0 0 0 0 0 0
## 150 0 0 0 0 0 0
## 151 0 0 0 0 0 0
## 152 0 0 0 0 0 0
## 153 0 0 0 0 0 0
## 154 0 0 0 0 0 0
## 155 0 0 0 0 0 0
## 156 0 0 0 0 0 0
## 157 0 0 0 0 0 0
## 158 0 0 0 0 0 0
## 159 0 0 0 0 0 0
## 160 0 0 0 0 0 0
## 161 0 0 0 0 0 0
## 162 0 0 0 0 0 0
## 163 0 0 0 0 0 0
## 164 0 0 0 0 0 0
## 165 0 0 0 0 0 0
## 166 0 0 0 0 0 0
## 167 0 0 0 0 0 0
## 168 0 0 0 0 0 0
## 169 0 0 0 0 0 0
## 170 0 0 0 0 0 0
## 171 0 0 0 0 0 0
## 172 0 0 0 0 0 0
## 173 0 0 0 0 0 0
## 174 0 0 0 0 0 0
## 175 0 0 0 0 0 0
## 176 0 0 0 0 0 0
## 177 0 0 0 0 0 0
## 178 0 0 0 0 0 0
## 179 0 0 0 0 0 0
## 180 0 0 0 0 0 0
## 181 0 0 0 0 0 0
## 182 0 0 0 0 0 0
## 183 0 0 0 0 0 0
## 184 0 0 0 0 0 0
## 185 0 0 0 0 0 0
## 186 0 0 0 0 0 0
## 187 0 0 0 0 0 0
## 188 0 0 0 0 0 0
## 189 0 0 0 0 0 0
## 190 0 0 0 0 0 0
## 191 0 0 0 0 0 0
## 192 0 0 0 0 0 0
## 193 0 0 0 0 0 0
## 194 0 0 0 0 0 0
## 195 0 0 0 0 0 0
## 196 0 0 0 0 0 0
## 197 0 0 0 0 0 0
## 198 0 0 0 0 0 0
## 199 0 0 0 0 0 0
## 200 0 0 0 0 0 0
## 201 0 0 0 0 0 0
## 202 0 0 0 0 0 0
## 203 0 0 0 0 0 0
## 204 0 0 0 0 0 0
## 205 0 0 0 0 0 0
## 206 0 0 0 0 0 0
## 207 0 0 0 0 0 0
## 208 0 0 0 0 0 0
## 209 0 0 0 0 0 0
## 210 0 0 0 0 0 0
## 211 0 0 0 0 0 0
## 212 0 0 0 0 0 0
## 213 0 0 0 0 0 0
## 214 0 0 0 0 0 0
## 215 0 0 0 0 0 0
## 216 0 0 0 0 0 0
## 217 0 0 0 0 0 0
## 218 0 0 0 0 0 0
## 219 0 0 0 0 0 0
## 220 0 0 0 0 0 0
## 221 0 0 0 0 0 0
## 222 0 0 0 0 0 0
## 223 0 0 0 0 0 0
## 224 0 0 0 0 0 0
## 225 0 0 0 0 0 0
## 226 0 0 0 0 0 0
## 227 0 0 0 0 0 0
## 228 0 0 0 0 0 0
## 229 0 0 0 0 0 0
## 230 0 0 0 0 0 0
## 231 0 0 0 0 0 0
## Knee2r.X1 Elbow2r.X1 Hook2r.X1 Jab2r.X1 Kick2r.X1 Cross2r.X2 Knee2r.X2
## 1 0 0 0 0 0 0 0
## 2 0 0 0 0 0 0 0
## 3 0 0 0 0 0 0 0
## 4 0 0 0 0 0 0 0
## 5 0 0 0 0 0 0 0
## 6 0 0 0 0 0 0 0
## 7 0 0 0 0 0 0 0
## 8 0 0 0 0 0 0 0
## 9 0 0 0 0 0 0 0
## 10 0 0 0 0 0 0 0
## 11 0 0 0 0 0 0 0
## 12 0 0 0 0 0 0 0
## 13 0 0 0 0 0 0 0
## 14 0 0 0 0 0 0 0
## 15 0 0 0 0 0 0 0
## 16 0 0 0 0 0 0 0
## 17 0 0 0 0 0 0 0
## 18 0 0 0 0 0 0 0
## 19 0 0 0 0 0 0 0
## 20 0 0 0 0 0 0 0
## 21 0 0 0 0 0 0 0
## 22 0 0 0 0 0 0 0
## 23 0 0 0 0 0 0 0
## 24 0 0 0 0 0 0 0
## 25 0 0 0 0 0 0 0
## 26 0 0 0 0 0 0 0
## 27 0 0 0 0 0 0 0
## 28 0 0 0 0 0 0 0
## 29 0 0 0 0 0 0 0
## 30 0 0 0 0 0 0 0
## 31 0 0 0 0 0 0 0
## 32 0 0 0 0 0 0 0
## 33 0 0 0 0 0 0 0
## 34 0 0 0 0 0 0 0
## 35 0 0 0 0 0 0 0
## 36 0 0 0 0 0 0 0
## 37 0 0 0 0 0 0 0
## 38 0 0 0 0 0 0 0
## 39 0 0 0 0 0 0 0
## 40 0 0 0 0 0 0 0
## 41 0 0 0 0 0 0 0
## 42 0 0 0 0 0 0 0
## 43 0 0 0 0 0 0 0
## 44 0 0 0 0 0 0 0
## 45 0 0 0 0 0 0 0
## 46 0 0 0 0 0 0 0
## 47 0 0 0 0 0 0 0
## 48 0 0 0 0 0 0 0
## 49 0 0 0 0 0 0 0
## 50 0 0 0 0 0 0 0
## 51 0 0 0 0 0 0 0
## 52 0 0 0 0 0 0 0
## 53 0 0 0 0 0 0 0
## 54 0 0 0 0 0 0 0
## 55 0 0 0 0 0 0 0
## 56 0 0 0 0 0 0 0
## 57 0 0 0 0 0 0 0
## 58 0 0 0 0 0 0 0
## 59 0 0 0 0 0 0 0
## 60 0 0 0 0 0 0 0
## 61 0 0 0 0 0 0 0
## 62 0 0 0 0 0 0 0
## 63 0 0 0 0 0 0 0
## 64 0 0 0 0 0 0 0
## 65 0 0 0 0 0 0 0
## 66 0 0 0 0 0 0 0
## 67 0 0 0 0 0 0 0
## 68 0 0 0 0 0 0 0
## 69 0 0 0 0 0 0 0
## 70 0 0 0 0 0 0 0
## 71 0 0 0 0 0 0 0
## 72 0 0 0 0 0 0 0
## 73 0 0 0 0 0 0 0
## 74 0 0 0 0 0 0 0
## 75 0 0 0 0 0 0 0
## 76 0 0 0 0 0 0 0
## 77 0 0 0 0 0 0 0
## 78 0 0 0 0 0 0 0
## 79 0 0 0 0 0 0 0
## 80 0 0 0 0 0 0 0
## 81 0 0 0 0 0 0 0
## 82 0 0 0 0 0 0 0
## 83 0 0 0 0 0 0 0
## 84 0 0 0 0 0 0 0
## 85 0 0 0 0 0 0 0
## 86 0 0 0 0 0 1 0
## 87 0 0 0 0 0 0 0
## 88 0 0 0 0 0 0 0
## 89 0 0 0 0 0 0 0
## 90 0 0 0 0 0 0 0
## 91 0 0 0 0 0 0 0
## 92 0 0 0 0 0 0 0
## 93 0 0 0 0 0 1 0
## 94 0 0 0 0 0 0 0
## 95 0 0 0 0 0 0 0
## 96 0 0 0 0 0 0 0
## 97 0 0 0 0 0 0 0
## 98 0 0 0 0 0 0 0
## 99 0 0 0 0 0 0 0
## 100 0 0 0 0 0 0 0
## 101 0 0 0 0 0 0 0
## 102 0 0 0 0 0 0 0
## 103 0 0 0 0 0 0 0
## 104 0 0 0 0 0 0 0
## 105 0 0 0 0 0 0 0
## 106 0 0 0 0 0 0 0
## 107 0 0 0 0 0 0 0
## 108 0 0 0 0 0 0 0
## 109 0 0 0 0 0 0 0
## 110 0 0 0 0 0 0 0
## 111 0 0 0 0 0 0 0
## 112 0 0 0 0 0 0 0
## 113 0 0 0 0 0 0 0
## 114 0 0 0 0 0 0 0
## 115 0 0 0 0 0 0 0
## 116 0 0 0 0 0 0 0
## 117 0 0 0 0 0 0 0
## 118 0 0 0 0 0 0 0
## 119 0 0 0 0 0 0 0
## 120 0 0 0 0 0 0 0
## 121 0 0 0 0 0 0 0
## 122 0 0 0 0 0 0 0
## 123 0 0 0 0 0 0 0
## 124 0 0 0 0 0 0 0
## 125 0 0 0 0 0 0 0
## 126 0 0 0 0 0 0 0
## 127 0 0 0 0 0 0 0
## 128 0 0 0 0 0 0 0
## 129 0 0 0 0 0 0 0
## 130 0 0 0 0 0 0 0
## 131 0 0 0 0 0 0 0
## 132 0 0 0 0 0 0 0
## 133 0 0 0 0 0 0 0
## 134 0 0 0 0 0 0 0
## 135 0 0 0 0 0 0 0
## 136 0 0 0 0 0 0 0
## 137 0 0 0 0 0 1 0
## 138 0 0 0 0 0 0 0
## 139 0 0 0 0 0 0 0
## 140 0 0 0 0 0 0 0
## 141 0 0 0 0 0 0 0
## 142 0 0 0 0 0 0 0
## 143 0 0 0 0 0 0 0
## 144 0 0 0 0 0 0 0
## 145 0 0 0 0 0 0 0
## 146 0 0 0 0 0 0 0
## 147 0 0 0 0 0 0 0
## 148 0 0 0 0 0 0 0
## 149 0 0 0 0 0 0 0
## 150 0 0 0 0 0 0 0
## 151 0 0 0 0 0 0 0
## 152 0 0 0 0 0 1 0
## 153 0 0 0 0 0 1 0
## 154 0 0 0 0 0 0 0
## 155 0 0 0 0 0 1 0
## 156 0 0 0 0 0 0 0
## 157 0 0 0 0 0 0 0
## 158 0 0 0 0 0 0 0
## 159 0 0 0 0 0 0 0
## 160 0 0 0 0 0 1 0
## 161 0 0 0 0 0 0 0
## 162 0 0 0 0 0 0 0
## 163 0 0 0 0 0 1 0
## 164 0 0 0 0 0 0 0
## 165 0 0 0 0 0 0 0
## 166 0 0 0 0 0 1 0
## 167 0 0 0 0 0 1 0
## 168 0 0 0 0 0 0 0
## 169 0 0 0 0 0 0 0
## 170 0 0 0 0 0 0 0
## 171 0 0 0 0 0 0 0
## 172 0 0 0 0 0 0 0
## 173 0 0 0 0 0 0 0
## 174 0 0 0 0 0 0 0
## 175 0 0 0 0 0 0 0
## 176 0 0 0 0 0 0 0
## 177 0 0 0 0 0 0 0
## 178 0 0 0 0 0 0 0
## 179 0 0 0 0 0 0 0
## 180 0 0 0 0 0 0 0
## 181 0 0 0 0 0 0 0
## 182 0 0 0 0 0 0 0
## 183 0 0 0 0 0 0 0
## 184 0 0 0 0 0 0 0
## 185 0 0 0 0 0 0 0
## 186 0 0 0 0 0 0 0
## 187 0 0 0 0 0 0 0
## 188 0 0 0 0 0 0 0
## 189 0 0 0 0 0 0 0
## 190 0 0 0 0 0 0 0
## 191 0 0 0 0 0 0 0
## 192 0 0 0 0 0 0 0
## 193 0 0 0 0 0 0 0
## 194 0 0 0 0 0 0 0
## 195 0 0 0 0 0 0 0
## 196 0 0 0 0 0 0 0
## 197 0 0 0 0 0 0 0
## 198 0 0 0 0 0 0 0
## 199 0 0 0 0 0 0 0
## 200 0 0 0 0 0 0 0
## 201 0 0 0 0 0 0 0
## 202 0 0 0 0 0 0 0
## 203 0 0 0 0 0 0 0
## 204 0 0 0 0 0 0 0
## 205 0 0 0 0 0 0 0
## 206 0 0 0 0 0 0 0
## 207 0 0 0 0 0 0 0
## 208 0 0 0 0 0 0 0
## 209 0 0 0 0 0 0 0
## 210 0 0 0 0 0 0 0
## 211 0 0 0 0 0 0 0
## 212 0 0 0 0 0 0 0
## 213 0 0 0 0 0 0 0
## 214 0 0 0 0 0 0 0
## 215 0 0 0 0 0 0 0
## 216 0 0 0 0 0 0 0
## 217 0 0 0 0 0 0 0
## 218 0 0 0 0 0 0 0
## 219 0 0 0 0 0 0 0
## 220 0 0 0 0 0 0 0
## 221 0 0 0 0 0 0 0
## 222 0 0 0 0 0 0 0
## 223 0 0 0 0 0 0 0
## 224 0 0 0 0 0 0 0
## 225 0 0 0 0 0 0 0
## 226 0 0 0 0 0 0 0
## 227 0 0 0 0 0 0 0
## 228 0 0 0 0 0 0 0
## 229 0 0 0 0 0 0 0
## 230 0 0 0 0 0 0 0
## 231 0 0 0 0 0 0 0
## Elbow2r.X2 Hook2r.X2 Jab2r.X2 Kick2r.X2 upper2r.X1 upper2r.X2 takedown2r.X1
## 1 0 0 0 0 0 0 0
## 2 0 0 0 0 0 0 0
## 3 0 0 0 0 0 0 0
## 4 0 0 0 0 0 0 0
## 5 0 0 0 0 0 0 0
## 6 0 0 0 0 0 0 0
## 7 0 0 0 0 0 0 0
## 8 0 0 0 0 0 0 0
## 9 0 0 0 0 0 0 0
## 10 0 0 0 0 0 0 0
## 11 0 0 0 0 0 0 0
## 12 0 0 0 0 0 0 0
## 13 0 0 0 0 0 0 0
## 14 0 0 0 0 0 0 0
## 15 0 0 0 0 0 0 0
## 16 0 0 0 0 0 0 0
## 17 0 0 0 0 0 0 0
## 18 0 0 0 0 0 0 0
## 19 0 0 0 0 0 0 0
## 20 0 0 0 0 0 0 0
## 21 0 0 0 0 0 0 0
## 22 0 0 0 0 0 0 0
## 23 0 0 0 0 0 0 0
## 24 0 0 0 0 0 0 0
## 25 0 0 0 0 0 0 0
## 26 0 0 0 0 0 0 0
## 27 0 0 0 0 0 0 0
## 28 0 0 0 0 0 0 0
## 29 0 0 0 0 0 0 0
## 30 0 0 0 0 0 0 0
## 31 0 0 0 0 0 0 0
## 32 0 0 0 0 0 0 0
## 33 0 0 0 0 0 0 0
## 34 0 0 0 0 0 0 0
## 35 0 0 0 0 0 0 0
## 36 0 0 0 0 0 0 0
## 37 0 0 0 0 0 0 0
## 38 0 0 0 0 0 0 0
## 39 0 0 0 0 0 0 0
## 40 0 0 0 0 0 0 0
## 41 0 0 0 0 0 0 0
## 42 0 0 0 0 0 0 0
## 43 0 0 0 0 0 0 0
## 44 0 0 0 0 0 0 0
## 45 0 0 0 0 0 0 0
## 46 0 0 0 0 0 0 0
## 47 0 0 0 0 0 0 0
## 48 0 0 0 0 0 0 0
## 49 0 0 0 0 0 0 0
## 50 0 0 0 0 0 0 0
## 51 0 0 0 0 0 0 0
## 52 0 0 0 0 0 0 0
## 53 0 0 0 0 0 0 0
## 54 0 0 0 0 0 0 0
## 55 0 0 0 0 0 0 0
## 56 0 0 0 0 0 0 0
## 57 0 0 0 0 0 0 0
## 58 0 0 0 0 0 0 0
## 59 0 0 0 0 0 0 0
## 60 0 0 0 0 0 0 0
## 61 0 0 0 0 0 0 0
## 62 0 0 0 0 0 0 0
## 63 0 0 0 0 0 0 0
## 64 0 0 0 0 0 0 0
## 65 0 0 0 0 0 0 0
## 66 0 0 0 0 0 0 0
## 67 0 0 0 0 0 0 0
## 68 0 0 0 0 0 0 0
## 69 0 0 0 0 0 0 0
## 70 0 0 0 0 0 0 0
## 71 0 0 0 0 0 0 0
## 72 0 0 0 0 0 0 0
## 73 0 0 0 0 0 0 0
## 74 0 0 0 0 0 0 0
## 75 0 0 0 0 0 0 0
## 76 0 0 0 0 0 0 0
## 77 0 0 0 0 0 0 0
## 78 0 0 0 0 0 0 0
## 79 0 0 0 0 0 0 0
## 80 0 0 0 0 0 0 0
## 81 0 0 0 0 0 0 0
## 82 0 0 0 0 0 0 0
## 83 0 0 0 0 0 0 0
## 84 0 0 0 0 0 0 0
## 85 0 0 0 0 0 0 0
## 86 0 0 0 0 0 0 0
## 87 0 0 0 0 0 0 0
## 88 0 0 0 0 0 0 0
## 89 0 0 0 0 0 0 0
## 90 0 0 0 0 0 0 0
## 91 0 0 0 0 0 0 0
## 92 0 0 0 0 0 0 0
## 93 0 0 0 0 0 0 0
## 94 0 0 0 0 0 0 0
## 95 0 0 0 0 0 0 0
## 96 0 0 0 0 0 0 0
## 97 0 0 0 0 0 0 0
## 98 0 0 0 0 0 0 0
## 99 0 0 0 0 0 0 0
## 100 0 0 0 0 0 0 0
## 101 0 0 0 0 0 0 0
## 102 0 0 0 0 0 0 0
## 103 0 0 0 0 0 0 0
## 104 0 0 0 0 0 0 0
## 105 0 0 0 0 0 0 0
## 106 0 0 0 0 0 0 0
## 107 0 0 0 0 0 0 0
## 108 0 0 0 0 0 0 0
## 109 0 0 0 0 0 0 0
## 110 0 0 0 0 0 0 0
## 111 0 0 0 0 0 0 0
## 112 0 0 0 0 0 0 0
## 113 0 0 0 0 0 0 0
## 114 0 0 0 0 0 0 0
## 115 0 0 0 0 0 0 0
## 116 0 0 0 0 0 0 0
## 117 0 0 0 0 0 0 0
## 118 0 0 0 0 0 0 0
## 119 0 0 0 0 0 0 0
## 120 0 0 0 0 0 0 0
## 121 0 0 0 0 0 0 0
## 122 0 0 0 0 0 0 0
## 123 0 0 0 0 0 0 0
## 124 0 0 0 0 0 0 0
## 125 0 0 0 0 0 0 0
## 126 0 0 0 0 0 0 0
## 127 0 0 0 0 0 0 0
## 128 0 0 0 0 0 0 0
## 129 0 0 0 0 0 0 0
## 130 0 0 0 0 0 0 0
## 131 0 0 0 0 0 0 0
## 132 0 0 0 0 0 0 0
## 133 0 0 0 0 0 0 0
## 134 0 0 0 0 0 0 0
## 135 0 0 0 0 0 0 0
## 136 0 0 0 0 0 0 0
## 137 0 0 0 0 0 0 0
## 138 0 0 0 0 0 0 0
## 139 0 0 0 0 0 0 0
## 140 0 0 0 0 0 0 0
## 141 0 0 0 0 0 0 0
## 142 0 0 0 0 0 0 0
## 143 0 0 0 0 0 0 0
## 144 0 0 0 0 0 0 0
## 145 0 0 0 0 0 0 0
## 146 0 0 0 0 0 0 0
## 147 0 0 0 0 0 0 0
## 148 0 0 0 0 0 0 0
## 149 0 0 0 0 0 0 0
## 150 0 0 0 0 0 0 0
## 151 0 0 0 0 0 0 0
## 152 0 0 0 0 0 0 0
## 153 0 0 0 0 0 0 0
## 154 0 0 0 0 0 0 0
## 155 0 0 0 0 0 0 0
## 156 0 0 0 0 0 0 0
## 157 0 0 0 0 0 0 0
## 158 0 0 0 0 0 0 0
## 159 0 0 0 0 0 0 0
## 160 0 0 0 0 0 0 0
## 161 0 0 0 0 0 0 0
## 162 0 0 0 0 0 0 0
## 163 0 0 0 0 0 0 0
## 164 0 0 0 0 0 0 0
## 165 0 0 0 0 0 0 0
## 166 0 0 0 0 0 0 0
## 167 0 0 0 0 0 0 0
## 168 0 0 0 0 0 0 0
## 169 0 0 0 0 0 0 0
## 170 0 0 0 0 0 0 0
## 171 0 0 0 0 0 0 0
## 172 0 0 0 0 0 0 0
## 173 0 0 0 0 0 0 0
## 174 0 0 0 0 0 0 0
## 175 1 0 0 0 0 0 0
## 176 0 0 0 0 0 0 0
## 177 0 0 0 0 0 0 0
## 178 0 0 0 0 0 0 0
## 179 0 0 0 0 0 0 0
## 180 0 0 0 0 0 0 0
## 181 0 0 0 0 0 0 0
## 182 0 0 0 0 0 0 0
## 183 0 0 0 0 0 0 0
## 184 0 0 0 0 0 0 0
## 185 0 0 0 0 0 0 0
## 186 0 0 0 0 0 0 0
## 187 0 0 0 0 0 0 0
## 188 0 0 0 0 0 0 0
## 189 0 0 0 0 0 0 0
## 190 0 0 0 0 0 0 0
## 191 0 0 0 0 0 0 0
## 192 0 0 0 0 0 0 0
## 193 0 0 0 0 0 0 0
## 194 0 0 0 0 0 0 0
## 195 0 0 0 0 0 0 0
## 196 0 0 0 0 0 0 0
## 197 0 0 0 0 0 0 0
## 198 0 0 0 0 0 0 0
## 199 0 0 0 0 0 0 0
## 200 0 0 0 0 0 0 0
## 201 0 0 0 0 0 0 0
## 202 0 0 0 0 0 0 0
## 203 0 0 0 0 0 0 0
## 204 0 0 0 0 0 0 0
## 205 0 0 0 0 0 0 0
## 206 0 0 0 0 0 0 0
## 207 0 0 0 0 0 0 0
## 208 0 0 0 0 0 0 0
## 209 0 0 0 0 0 0 0
## 210 0 0 0 0 0 0 0
## 211 0 0 0 0 0 0 0
## 212 0 0 0 0 0 0 0
## 213 0 0 0 0 0 0 0
## 214 0 0 0 0 0 0 0
## 215 0 0 0 0 0 0 0
## 216 0 0 0 0 0 0 0
## 217 0 0 0 0 0 0 0
## 218 0 0 0 0 0 0 0
## 219 0 0 0 0 0 0 0
## 220 0 0 0 0 0 0 0
## 221 0 0 0 0 0 0 0
## 222 0 0 0 0 0 0 0
## 223 0 0 0 0 0 0 0
## 224 0 0 0 0 0 0 0
## 225 0 0 0 0 0 0 0
## 226 0 0 0 0 0 0 0
## 227 0 0 0 0 0 0 0
## 228 0 0 0 0 0 0 0
## 229 0 0 0 0 0 0 0
## 230 0 0 0 0 0 0 0
## 231 0 0 0 0 0 0 0
## takedown2r.X2 hammer2r.X1 hammer2r.X2 Cross3r.X1 Knee3r.X1 Elbow3r.X1
## 1 0 0 0 0 0 0
## 2 0 0 0 0 0 0
## 3 0 0 0 0 0 0
## 4 0 0 0 0 0 0
## 5 0 0 0 0 0 0
## 6 0 0 0 0 0 0
## 7 0 0 0 0 0 0
## 8 0 0 0 0 0 0
## 9 0 0 0 0 0 0
## 10 0 0 0 0 0 0
## 11 0 0 0 0 0 0
## 12 0 0 0 0 0 0
## 13 0 0 0 0 0 0
## 14 0 0 0 0 0 0
## 15 0 0 0 0 0 0
## 16 0 0 0 0 0 0
## 17 0 0 0 0 0 0
## 18 0 0 0 0 0 0
## 19 0 0 0 0 0 0
## 20 0 0 0 0 0 0
## 21 0 0 0 0 0 0
## 22 0 0 0 0 0 0
## 23 0 0 0 0 0 0
## 24 0 0 0 0 0 0
## 25 0 0 0 0 0 0
## 26 0 0 0 0 0 0
## 27 0 0 0 0 0 0
## 28 0 0 0 0 0 0
## 29 0 0 0 0 0 0
## 30 0 0 0 0 0 0
## 31 0 0 0 0 0 0
## 32 0 0 0 0 0 0
## 33 0 0 0 0 0 0
## 34 0 0 0 0 0 0
## 35 0 0 0 0 0 0
## 36 0 0 0 0 0 0
## 37 0 0 0 0 0 0
## 38 0 0 0 0 0 0
## 39 0 0 0 0 0 0
## 40 0 0 0 0 0 0
## 41 0 0 0 0 0 0
## 42 0 0 0 0 0 0
## 43 0 0 0 0 0 0
## 44 0 0 0 0 0 0
## 45 0 0 0 0 0 0
## 46 0 0 0 0 0 0
## 47 0 0 0 0 0 0
## 48 0 0 0 0 0 0
## 49 0 0 0 0 0 0
## 50 0 0 0 0 0 0
## 51 0 0 0 0 0 0
## 52 0 0 0 0 0 0
## 53 0 0 0 0 0 0
## 54 0 0 0 0 0 0
## 55 0 0 0 0 0 0
## 56 0 0 0 0 0 0
## 57 0 0 0 0 0 0
## 58 0 0 0 0 0 0
## 59 0 0 0 0 0 0
## 60 0 0 0 0 0 0
## 61 0 0 0 0 0 0
## 62 0 0 0 0 0 0
## 63 0 0 0 0 0 0
## 64 0 0 0 0 0 0
## 65 0 0 0 0 0 0
## 66 0 0 0 0 0 0
## 67 0 0 0 0 0 0
## 68 0 0 0 0 0 0
## 69 0 0 0 0 0 0
## 70 0 0 0 0 0 0
## 71 0 0 0 0 0 0
## 72 0 0 0 0 0 0
## 73 0 0 0 0 0 0
## 74 0 0 0 0 0 0
## 75 0 0 0 0 0 0
## 76 0 0 0 0 0 0
## 77 0 0 0 0 0 0
## 78 0 0 0 0 0 0
## 79 0 0 0 0 0 0
## 80 0 0 0 0 0 0
## 81 0 0 0 0 0 0
## 82 0 0 0 0 0 0
## 83 0 0 0 0 0 0
## 84 0 0 0 0 0 0
## 85 0 0 0 0 0 0
## 86 0 0 0 0 0 0
## 87 0 0 0 0 0 0
## 88 0 0 0 0 0 0
## 89 0 0 0 0 0 0
## 90 0 0 0 0 0 0
## 91 0 0 0 0 0 0
## 92 0 0 0 0 0 0
## 93 0 0 0 0 0 0
## 94 0 0 0 0 0 0
## 95 0 0 0 0 0 0
## 96 0 0 0 0 0 0
## 97 0 0 0 0 0 0
## 98 0 0 0 0 0 0
## 99 0 0 0 0 0 0
## 100 0 0 0 0 0 0
## 101 0 0 0 0 0 0
## 102 0 0 0 0 0 0
## 103 0 0 0 0 0 0
## 104 0 0 0 0 0 0
## 105 0 0 0 0 0 0
## 106 0 0 0 0 0 0
## 107 0 0 0 0 0 0
## 108 0 0 0 0 0 0
## 109 0 0 0 0 0 0
## 110 0 0 0 0 0 0
## 111 0 0 0 0 0 0
## 112 0 0 0 0 0 0
## 113 0 0 0 0 0 0
## 114 0 0 0 0 0 0
## 115 0 0 0 0 0 0
## 116 0 0 0 0 0 0
## 117 0 0 0 0 0 0
## 118 0 0 0 0 0 0
## 119 0 0 0 0 0 0
## 120 0 0 0 0 0 0
## 121 0 0 0 0 0 0
## 122 0 0 0 0 0 0
## 123 0 0 0 0 0 0
## 124 0 0 0 0 0 0
## 125 0 0 0 0 0 0
## 126 0 0 0 0 0 0
## 127 0 0 0 0 0 0
## 128 0 0 0 0 0 0
## 129 0 0 0 0 0 0
## 130 0 0 0 0 0 0
## 131 0 0 0 0 0 0
## 132 0 0 0 0 0 0
## 133 0 0 0 0 0 0
## 134 0 0 0 0 0 0
## 135 0 0 0 0 0 0
## 136 0 0 0 0 0 0
## 137 0 0 0 0 0 0
## 138 0 0 0 0 0 0
## 139 0 0 0 0 0 0
## 140 0 0 0 0 0 0
## 141 0 0 0 0 0 0
## 142 0 0 0 0 0 0
## 143 0 0 0 0 0 0
## 144 0 0 0 0 0 0
## 145 0 0 0 0 0 0
## 146 0 0 0 0 0 0
## 147 0 0 0 0 0 0
## 148 0 0 0 0 0 0
## 149 0 0 0 0 0 0
## 150 0 0 0 0 0 0
## 151 0 0 0 0 0 0
## 152 0 0 0 0 0 0
## 153 0 0 0 0 0 0
## 154 0 0 0 0 0 0
## 155 0 0 0 0 0 0
## 156 0 0 0 0 0 0
## 157 0 0 0 0 0 0
## 158 0 0 0 0 0 0
## 159 0 0 0 0 0 0
## 160 0 0 0 0 0 0
## 161 0 0 0 0 0 0
## 162 0 0 0 0 0 0
## 163 0 0 0 0 0 0
## 164 0 0 0 0 0 0
## 165 0 0 0 0 0 0
## 166 0 0 0 0 0 0
## 167 0 0 0 0 0 0
## 168 0 0 0 0 0 0
## 169 0 0 0 0 0 0
## 170 0 0 0 0 0 0
## 171 0 0 0 0 0 0
## 172 0 0 0 0 0 0
## 173 0 0 0 0 0 0
## 174 0 0 0 0 0 0
## 175 0 0 0 0 0 0
## 176 0 0 0 0 0 0
## 177 0 0 0 0 0 0
## 178 0 0 0 0 0 0
## 179 0 0 0 0 0 0
## 180 0 0 0 0 0 0
## 181 0 0 0 0 0 0
## 182 0 0 0 0 0 0
## 183 0 0 0 0 0 0
## 184 0 0 0 0 0 0
## 185 0 0 0 0 0 0
## 186 0 0 0 0 0 0
## 187 0 0 0 0 0 0
## 188 0 0 0 0 0 0
## 189 0 0 0 0 0 0
## 190 0 0 0 0 0 0
## 191 0 0 0 0 0 0
## 192 0 0 0 0 0 0
## 193 0 0 0 0 0 0
## 194 0 0 0 0 0 0
## 195 0 0 0 0 0 0
## 196 0 0 0 0 0 0
## 197 0 0 0 0 0 0
## 198 0 0 0 0 0 0
## 199 0 0 0 0 0 0
## 200 0 0 0 0 0 0
## 201 0 0 0 0 0 0
## 202 0 0 0 0 0 0
## 203 0 0 0 0 0 0
## 204 0 0 0 0 0 0
## 205 0 0 0 0 0 0
## 206 0 0 0 0 0 0
## 207 0 0 0 0 0 0
## 208 0 0 0 0 0 0
## 209 0 0 0 0 0 0
## 210 0 0 0 0 0 0
## 211 0 0 0 0 0 0
## 212 0 0 0 0 0 0
## 213 0 0 0 0 0 0
## 214 0 0 0 0 0 0
## 215 0 0 0 0 0 0
## 216 0 0 0 0 0 0
## 217 0 0 0 0 0 0
## 218 0 0 0 0 0 0
## 219 0 0 0 0 0 0
## 220 0 0 0 0 0 0
## 221 0 0 0 0 0 0
## 222 0 0 0 0 0 0
## 223 0 0 0 0 0 0
## 224 0 0 0 0 0 0
## 225 0 0 0 0 0 0
## 226 0 0 0 0 0 0
## 227 0 0 0 0 0 0
## 228 0 0 0 0 0 0
## 229 0 0 0 0 0 0
## 230 0 0 0 0 0 0
## 231 0 0 0 0 0 0
## Hook3r.X1 Jab3r.X1 Kick3r.X1 Cross3r.X2 Knee3r.X2 Elbow3r.X2 Hook3r.X2
## 1 0 0 0 0 0 0 0
## 2 0 0 0 0 0 0 0
## 3 0 0 0 0 0 0 0
## 4 0 0 0 0 0 0 0
## 5 0 0 0 0 0 0 0
## 6 0 0 0 0 0 0 0
## 7 0 0 0 0 0 0 0
## 8 0 0 0 0 0 0 0
## 9 0 0 0 0 0 0 0
## 10 0 0 0 0 0 0 0
## 11 0 0 0 0 0 0 0
## 12 0 0 0 0 0 0 0
## 13 0 0 0 0 0 0 0
## 14 0 0 0 0 0 0 0
## 15 0 0 0 0 0 0 0
## 16 0 0 0 0 0 0 0
## 17 0 0 0 0 0 0 0
## 18 0 0 0 0 0 0 0
## 19 0 0 0 0 0 0 0
## 20 0 0 0 0 0 0 0
## 21 0 0 0 0 0 0 0
## 22 0 0 0 0 0 0 0
## 23 0 0 0 0 0 0 0
## 24 0 0 0 0 0 0 0
## 25 0 0 0 0 0 0 0
## 26 0 0 0 0 0 0 0
## 27 0 0 0 0 0 0 0
## 28 0 0 0 0 0 0 0
## 29 0 0 0 0 0 0 0
## 30 0 0 0 0 0 0 0
## 31 0 0 0 0 0 0 0
## 32 0 0 0 0 0 0 0
## 33 0 0 0 0 0 0 0
## 34 0 0 0 0 0 0 0
## 35 0 0 0 0 0 0 0
## 36 0 0 0 0 0 0 0
## 37 0 0 0 0 0 0 0
## 38 0 0 0 0 0 0 0
## 39 0 0 0 0 0 0 0
## 40 0 0 0 0 0 0 0
## 41 0 0 0 0 0 0 0
## 42 0 0 0 0 0 0 0
## 43 0 0 0 0 0 0 0
## 44 0 0 0 0 0 0 0
## 45 0 0 0 0 0 0 0
## 46 0 0 0 0 0 0 0
## 47 0 0 0 0 0 0 0
## 48 0 0 0 0 0 0 0
## 49 0 0 0 0 0 0 0
## 50 0 0 0 0 0 0 0
## 51 0 0 0 0 0 0 0
## 52 0 0 0 0 0 0 0
## 53 0 0 0 0 0 0 0
## 54 0 0 0 0 0 0 0
## 55 0 0 0 0 0 0 0
## 56 0 0 0 0 0 0 0
## 57 0 0 0 0 0 0 0
## 58 0 0 0 0 0 0 0
## 59 0 0 0 0 0 0 0
## 60 0 0 0 0 0 0 0
## 61 0 0 0 0 0 0 0
## 62 0 0 0 0 0 0 0
## 63 0 0 0 0 0 0 0
## 64 0 0 0 0 0 0 0
## 65 0 0 0 0 0 0 0
## 66 0 0 0 0 0 0 0
## 67 0 0 0 0 0 0 0
## 68 0 0 0 0 0 0 0
## 69 0 0 0 0 0 0 0
## 70 0 0 0 0 0 0 0
## 71 0 0 0 0 0 0 0
## 72 0 0 0 0 0 0 0
## 73 0 0 0 0 0 0 0
## 74 0 0 0 0 0 0 0
## 75 0 0 0 0 0 0 0
## 76 0 0 0 0 0 0 0
## 77 0 0 0 0 0 0 0
## 78 0 0 0 0 0 0 0
## 79 0 0 0 0 0 0 0
## 80 0 0 0 0 0 0 0
## 81 0 0 0 0 0 0 0
## 82 0 0 0 0 0 0 0
## 83 0 0 0 0 0 0 0
## 84 0 0 0 0 0 0 0
## 85 0 0 0 0 0 0 0
## 86 0 0 0 1 0 0 0
## 87 0 0 0 0 0 0 0
## 88 0 0 0 0 0 0 0
## 89 0 0 0 0 0 0 0
## 90 0 0 0 0 0 0 0
## 91 0 0 0 0 0 0 0
## 92 0 0 0 0 0 0 0
## 93 0 0 0 0 0 0 0
## 94 0 0 0 0 0 0 0
## 95 0 0 0 0 0 0 0
## 96 0 0 0 0 0 0 0
## 97 0 0 0 0 0 0 0
## 98 0 0 0 0 0 0 0
## 99 0 0 0 0 0 0 0
## 100 0 0 0 0 0 0 0
## 101 0 0 0 0 0 0 0
## 102 0 0 0 0 0 0 0
## 103 0 0 0 0 0 0 0
## 104 0 0 0 0 0 0 0
## 105 0 0 0 0 0 0 0
## 106 0 0 0 0 0 0 0
## 107 0 0 0 0 0 0 0
## 108 0 0 0 0 0 0 0
## 109 0 0 0 0 0 0 0
## 110 0 0 0 0 0 0 0
## 111 0 0 0 0 0 0 0
## 112 0 0 0 0 0 0 0
## 113 0 0 0 0 0 0 0
## 114 0 0 0 0 0 0 0
## 115 0 0 0 0 0 0 0
## 116 0 0 0 0 0 0 0
## 117 0 0 0 0 0 0 0
## 118 0 0 0 0 0 0 0
## 119 0 0 0 0 0 0 0
## 120 0 0 0 0 0 0 0
## 121 0 0 0 0 0 0 0
## 122 0 0 0 0 0 0 0
## 123 0 0 0 0 0 0 0
## 124 0 0 0 0 0 0 0
## 125 0 0 0 0 0 0 0
## 126 0 0 0 0 0 0 0
## 127 0 0 0 0 0 0 0
## 128 0 0 0 0 0 0 0
## 129 0 0 0 0 0 0 0
## 130 0 0 0 0 0 0 0
## 131 0 0 0 0 0 0 0
## 132 0 0 0 0 0 0 0
## 133 0 0 0 0 0 0 0
## 134 0 0 0 0 0 0 0
## 135 0 0 0 0 0 0 0
## 136 0 0 0 0 0 0 0
## 137 0 0 0 0 0 0 0
## 138 0 0 0 0 0 0 0
## 139 0 0 0 0 0 0 0
## 140 0 0 0 0 0 0 0
## 141 0 0 0 0 0 0 0
## 142 0 0 0 0 0 0 0
## 143 0 0 0 0 0 0 0
## 144 0 0 0 0 0 0 0
## 145 0 0 0 0 0 0 0
## 146 0 0 0 0 0 0 0
## 147 0 0 0 0 0 0 0
## 148 0 0 0 0 0 0 0
## 149 0 0 0 0 0 0 0
## 150 0 0 0 0 0 0 0
## 151 0 0 0 0 0 0 0
## 152 0 0 0 0 0 0 0
## 153 0 0 0 0 0 0 0
## 154 0 0 0 0 0 0 0
## 155 0 0 0 0 0 0 0
## 156 0 0 0 0 0 0 0
## 157 0 0 0 0 0 0 0
## 158 0 0 0 0 0 0 0
## 159 0 0 0 0 0 0 0
## 160 0 0 0 0 0 0 0
## 161 0 0 0 1 0 0 0
## 162 0 0 0 0 0 0 0
## 163 0 0 0 0 0 0 0
## 164 0 0 0 0 0 0 0
## 165 0 0 0 0 0 0 0
## 166 0 0 0 0 0 0 0
## 167 0 0 0 0 0 0 0
## 168 0 0 0 0 0 0 0
## 169 0 0 0 0 0 0 0
## 170 0 0 0 0 0 0 0
## 171 0 0 0 0 0 0 0
## 172 0 0 0 0 0 0 0
## 173 0 0 0 0 0 0 0
## 174 0 0 0 0 0 0 0
## 175 0 0 0 0 0 0 0
## 176 0 0 0 0 0 0 0
## 177 0 0 0 0 0 0 0
## 178 0 0 0 0 0 0 0
## 179 0 0 0 0 0 0 0
## 180 0 0 0 0 0 0 0
## 181 0 0 0 0 0 0 0
## 182 0 0 0 0 0 0 0
## 183 0 0 0 0 0 0 0
## 184 0 0 0 0 0 0 0
## 185 0 0 0 0 0 0 0
## 186 0 0 0 0 0 0 0
## 187 0 0 0 0 0 0 0
## 188 0 0 0 0 0 0 0
## 189 0 0 0 0 0 0 0
## 190 0 0 0 0 0 0 0
## 191 0 0 0 0 0 0 0
## 192 0 0 0 0 0 0 0
## 193 0 0 0 0 0 0 0
## 194 0 0 0 0 0 0 0
## 195 0 0 0 0 0 0 0
## 196 0 0 0 0 0 0 0
## 197 0 0 0 0 0 0 0
## 198 0 0 0 0 0 0 0
## 199 0 0 0 0 0 0 0
## 200 0 0 0 0 0 0 0
## 201 0 0 0 0 0 0 0
## 202 0 0 0 0 0 0 0
## 203 0 0 0 0 0 0 0
## 204 0 0 0 0 0 0 0
## 205 0 0 0 0 0 0 0
## 206 0 0 0 0 0 0 0
## 207 0 0 0 0 0 0 0
## 208 0 0 0 0 0 0 0
## 209 0 0 0 0 0 0 0
## 210 0 0 0 0 0 0 0
## 211 0 0 0 0 0 0 0
## 212 0 0 0 0 0 0 0
## 213 0 0 0 0 0 0 0
## 214 0 0 0 0 0 0 0
## 215 0 0 0 0 0 0 0
## 216 0 0 0 0 0 0 0
## 217 0 0 0 0 0 0 0
## 218 0 0 0 0 0 0 0
## 219 0 0 0 0 0 0 0
## 220 0 0 0 0 0 0 0
## 221 0 0 0 0 0 0 0
## 222 0 0 0 0 0 0 0
## 223 0 0 0 0 0 0 0
## 224 0 0 0 0 0 0 0
## 225 0 0 0 0 0 0 0
## 226 0 0 0 0 0 0 0
## 227 0 0 0 0 0 0 0
## 228 0 0 0 0 0 0 0
## 229 0 0 0 0 0 0 0
## 230 0 0 0 0 0 0 0
## 231 0 0 0 0 0 0 0
## Jab3r.X2 Kick3r.X2 upper3r.X1 upper3r.X2 takedown3r.X1 takedown3r.X2
## 1 0 0 0 0 0 0
## 2 0 0 0 0 0 0
## 3 0 0 0 0 0 0
## 4 0 0 0 0 0 0
## 5 0 0 0 0 0 0
## 6 0 0 0 0 0 0
## 7 0 0 0 0 0 0
## 8 0 0 0 0 0 0
## 9 0 0 0 0 0 0
## 10 0 0 0 0 0 0
## 11 0 0 0 0 0 0
## 12 0 0 0 0 0 0
## 13 0 0 0 0 0 0
## 14 0 0 0 0 0 0
## 15 0 0 0 0 0 0
## 16 0 0 0 0 0 0
## 17 0 0 0 0 0 0
## 18 0 0 0 0 0 0
## 19 0 0 0 0 0 0
## 20 0 0 0 0 0 0
## 21 0 0 0 0 0 0
## 22 0 0 0 0 0 0
## 23 0 0 0 0 0 0
## 24 0 0 0 0 0 0
## 25 0 0 0 0 0 0
## 26 0 0 0 0 0 0
## 27 0 0 0 0 0 0
## 28 0 0 0 0 0 0
## 29 0 0 0 0 0 0
## 30 0 0 0 0 0 0
## 31 0 0 0 0 0 0
## 32 0 0 0 0 0 0
## 33 0 0 0 0 0 0
## 34 0 0 0 0 0 0
## 35 0 0 0 0 0 0
## 36 0 0 0 0 0 0
## 37 0 0 0 0 0 0
## 38 0 0 0 0 0 0
## 39 0 0 0 0 0 0
## 40 0 0 0 0 0 0
## 41 0 0 0 0 0 0
## 42 0 0 0 0 0 0
## 43 0 0 0 0 0 0
## 44 0 0 0 0 0 0
## 45 0 0 0 0 0 0
## 46 0 0 0 0 0 0
## 47 0 0 0 0 0 0
## 48 0 0 0 0 0 0
## 49 0 0 0 0 0 0
## 50 0 0 0 0 0 0
## 51 0 0 0 0 0 0
## 52 0 0 0 0 0 0
## 53 0 0 0 0 0 0
## 54 0 0 0 0 0 0
## 55 0 0 0 0 0 0
## 56 0 0 0 0 0 0
## 57 0 0 0 0 0 0
## 58 0 0 0 0 0 0
## 59 0 0 0 0 0 0
## 60 0 0 0 0 0 0
## 61 0 0 0 0 0 0
## 62 0 0 0 0 0 0
## 63 0 0 0 0 0 0
## 64 0 0 0 0 0 0
## 65 0 0 0 0 0 0
## 66 0 0 0 0 0 0
## 67 0 0 0 0 0 0
## 68 0 0 0 0 0 0
## 69 0 0 0 0 0 0
## 70 0 0 0 0 0 0
## 71 0 0 0 0 0 0
## 72 0 0 0 0 0 0
## 73 0 0 0 0 0 0
## 74 0 0 0 0 0 0
## 75 0 0 0 0 0 0
## 76 0 0 0 0 0 0
## 77 0 0 0 0 0 0
## 78 0 0 0 0 0 0
## 79 0 0 0 0 0 0
## 80 0 0 0 0 0 0
## 81 0 0 0 0 0 0
## 82 0 0 0 0 0 0
## 83 0 0 0 0 0 0
## 84 0 0 0 0 0 0
## 85 0 0 0 0 0 0
## 86 0 0 0 0 0 0
## 87 0 0 0 0 0 0
## 88 0 0 0 0 0 0
## 89 0 0 0 0 0 0
## 90 0 0 0 0 0 0
## 91 0 0 0 0 0 0
## 92 0 0 0 0 0 0
## 93 0 0 0 0 0 0
## 94 0 0 0 0 0 0
## 95 0 0 0 0 0 0
## 96 0 0 0 0 0 0
## 97 0 0 0 0 0 0
## 98 0 0 0 0 0 0
## 99 0 0 0 0 0 0
## 100 0 0 0 0 0 0
## 101 0 0 0 0 0 0
## 102 0 0 0 0 0 0
## 103 0 0 0 0 0 0
## 104 0 0 0 0 0 0
## 105 0 0 0 0 0 0
## 106 0 0 0 0 0 0
## 107 0 0 0 0 0 0
## 108 0 0 0 0 0 0
## 109 0 0 0 0 0 0
## 110 0 0 0 0 0 0
## 111 0 0 0 0 0 0
## 112 0 0 0 0 0 0
## 113 0 0 0 0 0 0
## 114 0 0 0 0 0 0
## 115 0 0 0 0 0 0
## 116 0 0 0 0 0 0
## 117 0 0 0 0 0 0
## 118 0 0 0 0 0 0
## 119 0 0 0 0 0 0
## 120 0 0 0 0 0 0
## 121 0 0 0 0 0 0
## 122 0 0 0 0 0 0
## 123 0 0 0 0 0 0
## 124 0 0 0 0 0 0
## 125 0 0 0 0 0 0
## 126 0 0 0 0 0 0
## 127 0 0 0 0 0 0
## 128 0 0 0 0 0 0
## 129 0 0 0 0 0 0
## 130 0 0 0 0 0 0
## 131 0 0 0 0 0 0
## 132 0 0 0 0 0 0
## 133 0 0 0 0 0 0
## 134 0 0 0 0 0 0
## 135 0 0 0 0 0 0
## 136 0 0 0 0 0 0
## 137 0 0 0 0 0 0
## 138 0 0 0 0 0 0
## 139 0 0 0 0 0 0
## 140 0 0 0 0 0 0
## 141 0 0 0 0 0 0
## 142 0 0 0 0 0 0
## 143 0 0 0 0 0 0
## 144 0 0 0 0 0 0
## 145 0 0 0 0 0 0
## 146 0 0 0 0 0 0
## 147 0 0 0 0 0 0
## 148 0 0 0 0 0 0
## 149 0 0 0 0 0 0
## 150 0 0 0 0 0 0
## 151 0 0 0 0 0 0
## 152 0 0 0 0 0 0
## 153 0 0 0 0 0 0
## 154 0 0 0 0 0 0
## 155 0 0 0 0 0 0
## 156 0 0 0 0 0 0
## 157 0 0 0 0 0 0
## 158 0 0 0 0 0 0
## 159 0 0 0 0 0 0
## 160 0 0 0 0 0 0
## 161 0 0 0 0 0 0
## 162 0 0 0 0 0 0
## 163 0 0 0 0 0 0
## 164 0 0 0 0 0 0
## 165 0 0 0 0 0 0
## 166 0 0 0 0 0 0
## 167 0 0 0 0 0 0
## 168 0 0 0 0 0 0
## 169 0 0 0 0 0 0
## 170 0 0 0 0 0 0
## 171 0 0 0 0 0 0
## 172 0 0 0 0 0 0
## 173 0 0 0 0 0 0
## 174 0 0 0 0 0 0
## 175 0 0 0 0 0 0
## 176 0 0 0 0 0 0
## 177 0 0 0 0 0 0
## 178 0 0 0 0 0 0
## 179 0 0 0 0 0 0
## 180 0 0 0 0 0 0
## 181 0 0 0 0 0 0
## 182 0 0 0 0 0 0
## 183 0 0 0 0 0 0
## 184 0 0 0 0 0 0
## 185 0 0 0 0 0 0
## 186 0 0 0 0 0 0
## 187 0 0 0 0 0 0
## 188 0 0 0 0 0 0
## 189 0 0 0 0 0 0
## 190 0 0 0 0 0 0
## 191 0 0 0 0 0 0
## 192 0 0 0 0 0 0
## 193 0 0 0 0 0 0
## 194 0 0 0 0 0 0
## 195 0 0 0 0 0 0
## 196 0 0 0 0 0 0
## 197 0 0 0 0 0 0
## 198 0 0 0 0 0 0
## 199 0 0 0 0 0 0
## 200 0 0 0 0 0 0
## 201 0 0 0 0 0 0
## 202 0 0 0 0 0 0
## 203 0 0 0 0 0 0
## 204 0 0 0 0 0 0
## 205 0 0 0 0 0 0
## 206 0 0 0 0 0 0
## 207 0 0 0 0 0 0
## 208 0 0 0 0 0 0
## 209 0 0 0 0 0 0
## 210 0 0 0 0 0 0
## 211 0 0 0 0 0 0
## 212 0 0 0 0 0 0
## 213 0 0 0 0 0 0
## 214 0 0 0 0 0 0
## 215 0 0 0 0 0 0
## 216 0 0 0 0 0 0
## 217 0 0 0 0 0 0
## 218 0 0 0 0 0 0
## 219 0 0 0 0 0 0
## 220 0 0 0 0 0 0
## 221 0 0 0 0 0 0
## 222 0 0 0 0 0 0
## 223 0 0 0 0 0 0
## 224 0 0 0 0 0 0
## 225 0 0 0 0 0 0
## 226 0 0 0 0 0 0
## 227 0 0 0 0 0 0
## 228 0 0 0 0 0 0
## 229 0 0 0 0 0 0
## 230 0 0 0 0 0 0
## 231 0 0 0 0 0 0
## hammer3r.X1 hammer3r.X2
## 1 0 0
## 2 0 0
## 3 0 0
## 4 0 0
## 5 0 0
## 6 0 0
## 7 0 0
## 8 0 0
## 9 0 0
## 10 0 0
## 11 0 0
## 12 0 0
## 13 0 0
## 14 0 0
## 15 0 0
## 16 0 0
## 17 0 0
## 18 0 0
## 19 0 0
## 20 0 0
## 21 0 0
## 22 0 0
## 23 0 0
## 24 0 0
## 25 0 0
## 26 0 0
## 27 0 0
## 28 0 0
## 29 0 0
## 30 0 0
## 31 0 0
## 32 0 0
## 33 0 0
## 34 0 0
## 35 0 0
## 36 0 0
## 37 0 0
## 38 0 0
## 39 0 0
## 40 0 0
## 41 0 0
## 42 0 0
## 43 0 0
## 44 0 0
## 45 0 0
## 46 0 0
## 47 0 0
## 48 0 0
## 49 0 0
## 50 0 0
## 51 0 0
## 52 0 0
## 53 0 0
## 54 0 0
## 55 0 0
## 56 0 0
## 57 0 0
## 58 0 0
## 59 0 0
## 60 0 0
## 61 0 0
## 62 0 0
## 63 0 0
## 64 0 0
## 65 0 0
## 66 0 0
## 67 0 0
## 68 0 0
## 69 0 0
## 70 0 0
## 71 0 0
## 72 0 0
## 73 0 0
## 74 0 0
## 75 0 0
## 76 0 0
## 77 0 0
## 78 0 0
## 79 0 0
## 80 0 0
## 81 0 0
## 82 0 0
## 83 0 0
## 84 0 0
## 85 0 0
## 86 0 0
## 87 0 0
## 88 0 0
## 89 0 0
## 90 0 0
## 91 0 0
## 92 0 0
## 93 0 0
## 94 0 0
## 95 0 0
## 96 0 0
## 97 0 0
## 98 0 0
## 99 0 0
## 100 0 0
## 101 0 0
## 102 0 0
## 103 0 0
## 104 0 0
## 105 0 0
## 106 0 0
## 107 0 0
## 108 0 0
## 109 0 0
## 110 0 0
## 111 0 0
## 112 0 0
## 113 0 0
## 114 0 0
## 115 0 0
## 116 0 0
## 117 0 0
## 118 0 0
## 119 0 0
## 120 0 0
## 121 0 0
## 122 0 0
## 123 0 0
## 124 0 0
## 125 0 0
## 126 0 0
## 127 0 0
## 128 0 0
## 129 0 0
## 130 0 0
## 131 0 0
## 132 0 0
## 133 0 0
## 134 0 0
## 135 0 0
## 136 0 0
## 137 0 0
## 138 0 0
## 139 0 0
## 140 0 0
## 141 0 0
## 142 0 0
## 143 0 0
## 144 0 0
## 145 0 0
## 146 0 0
## 147 0 0
## 148 0 0
## 149 0 0
## 150 0 0
## 151 0 0
## 152 0 0
## 153 0 0
## 154 0 0
## 155 0 0
## 156 0 0
## 157 0 0
## 158 0 0
## 159 0 0
## 160 0 0
## 161 0 0
## 162 0 0
## 163 0 0
## 164 0 0
## 165 0 0
## 166 0 0
## 167 0 0
## 168 0 0
## 169 0 0
## 170 0 0
## 171 0 0
## 172 0 0
## 173 0 0
## 174 0 0
## 175 0 0
## 176 0 0
## 177 0 0
## 178 0 0
## 179 0 0
## 180 0 0
## 181 0 0
## 182 0 0
## 183 0 0
## 184 0 0
## 185 0 0
## 186 0 0
## 187 0 0
## 188 0 0
## 189 0 0
## 190 0 0
## 191 0 0
## 192 0 0
## 193 0 0
## 194 0 0
## 195 0 0
## 196 0 0
## 197 0 0
## 198 0 0
## 199 0 0
## 200 0 0
## 201 0 0
## 202 0 0
## 203 0 0
## 204 0 0
## 205 0 0
## 206 0 0
## 207 0 0
## 208 0 0
## 209 0 0
## 210 0 0
## 211 0 0
## 212 0 0
## 213 0 0
## 214 0 0
## 215 0 0
## 216 0 0
## 217 0 0
## 218 0 0
## 219 0 0
## 220 0 0
## 221 0 0
## 222 0 0
## 223 0 0
## 224 0 0
## 225 0 0
## 226 0 0
## 227 0 0
## 228 0 0
## 229 0 0
## 230 0 0
## 231 0 0
Second opponent:
Table2 <- Added3[split1:(split2-1),]
Table2
## Round SecondsIntoRound lastAction SecondsLastRoundAction cmTotHitsR.X1
## 232 1 9 299 9 NA
## 233 1 13 9 4 NA
## 234 1 16 13 3 NA
## 235 1 18 16 2 NA
## 236 1 37 18 19 NA
## 237 1 38 37 1 NA
## 238 1 41 38 3 NA
## 239 1 48 41 7 NA
## 240 1 55 48 7 NA
## 241 1 59 55 4 NA
## 242 1 60 59 1 NA
## 243 1 62 60 2 NA
## 244 1 64 62 2 NA
## 245 1 67 64 3 NA
## 246 1 68 67 1 NA
## 247 1 72 68 4 NA
## 248 1 91 72 19 NA
## 249 1 93 91 2 NA
## 250 1 101 93 8 NA
## 251 1 104 101 3 NA
## 252 1 106 104 2 NA
## 253 1 114 106 8 NA
## 254 1 115 114 1 NA
## 255 1 119 115 4 NA
## 256 1 129 119 10 NA
## 257 1 130 129 1 NA
## 258 1 132 130 2 NA
## 259 1 133 132 1 NA
## 260 1 135 133 2 NA
## 261 1 137 135 2 NA
## 262 1 139 137 2 NA
## 263 1 143 139 4 NA
## 264 1 145 143 2 NA
## 265 1 146 145 1 NA
## 266 1 147 146 1 NA
## 267 1 148 147 1 NA
## 268 1 150 148 2 NA
## 269 1 151 150 1 NA
## 270 1 152 151 1 NA
## 271 1 153 152 1 NA
## 272 1 156 153 3 NA
## 273 1 158 156 2 NA
## 274 1 160 158 2 NA
## 275 1 161 160 1 NA
## 276 1 163 161 2 NA
## 277 1 164 163 1 NA
## 278 1 168 164 4 NA
## 279 1 179 168 11 NA
## 280 1 180 179 1 NA
## 281 1 183 180 3 NA
## 282 1 189 183 6 NA
## 283 1 191 189 2 NA
## 284 1 193 191 2 NA
## cmTotHitsL.X1 cmTotHitsM.X1 TotLandsX1 TotMissedX1 TotReceivedX1
## 232 NA NA 0 0 0
## 233 NA NA 0 0 0
## 234 NA NA 0 1 0
## 235 NA NA 0 1 0
## 236 NA NA 0 0 0
## 237 NA NA 0 1 0
## 238 NA NA 0 0 0
## 239 NA NA 0 0 0
## 240 NA NA 0 1 0
## 241 NA NA 0 1 0
## 242 NA NA 0 0 1
## 243 NA NA 0 0 0
## 244 NA NA 0 0 0
## 245 NA NA 0 0 0
## 246 NA NA 0 1 0
## 247 NA NA 0 1 0
## 248 NA NA 0 1 0
## 249 NA NA 0 0 0
## 250 NA NA 0 1 0
## 251 NA NA 1 0 0
## 252 NA NA 0 1 0
## 253 NA NA 0 1 0
## 254 NA NA 0 2 0
## 255 NA NA 0 1 1
## 256 NA NA 0 1 0
## 257 NA NA 1 0 0
## 258 NA NA 0 1 0
## 259 NA NA 0 1 0
## 260 NA NA 0 1 0
## 261 NA NA 0 2 0
## 262 NA NA 0 1 0
## 263 NA NA 0 1 0
## 264 NA NA 1 0 0
## 265 NA NA 0 1 0
## 266 NA NA 1 0 0
## 267 NA NA 0 1 0
## 268 NA NA 0 0 0
## 269 NA NA 1 0 0
## 270 NA NA 1 0 0
## 271 NA NA 0 2 0
## 272 NA NA 1 0 0
## 273 NA NA 0 2 0
## 274 NA NA 1 0 0
## 275 NA NA 0 1 0
## 276 NA NA 0 1 0
## 277 NA NA 2 0 0
## 278 NA NA 0 1 0
## 279 NA NA 1 0 0
## 280 NA NA 1 0 0
## 281 NA NA 1 0 0
## 282 NA NA 0 0 0
## 283 NA NA 0 0 0
## 284 NA NA 0 0 0
## cmTotHitsR.X2 cmTotHitsL.X2 cmTotHitsM.X2 TotLandsX2 TotMissedX2
## 232 NA NA NA 0 1
## 233 NA NA NA 0 1
## 234 NA NA NA 0 0
## 235 NA NA NA 0 0
## 236 NA NA NA 0 1
## 237 NA NA NA 0 0
## 238 NA NA NA 0 1
## 239 NA NA NA 0 1
## 240 NA NA NA 0 0
## 241 NA NA NA 0 0
## 242 NA NA NA 1 0
## 243 NA NA NA 0 0
## 244 NA NA NA 0 0
## 245 NA NA NA 0 1
## 246 NA NA NA 0 0
## 247 NA NA NA 0 0
## 248 NA NA NA 0 0
## 249 NA NA NA 0 0
## 250 NA NA NA 0 1
## 251 NA NA NA 0 0
## 252 NA NA NA 0 0
## 253 NA NA NA 0 1
## 254 NA NA NA 0 0
## 255 NA NA NA 1 0
## 256 NA NA NA 0 1
## 257 NA NA NA 0 1
## 258 NA NA NA 0 0
## 259 NA NA NA 0 0
## 260 NA NA NA 0 0
## 261 NA NA NA 0 1
## 262 NA NA NA 0 0
## 263 NA NA NA 0 0
## 264 NA NA NA 0 1
## 265 NA NA NA 0 0
## 266 NA NA NA 0 0
## 267 NA NA NA 0 0
## 268 NA NA NA 0 0
## 269 NA NA NA 0 0
## 270 NA NA NA 0 0
## 271 NA NA NA 0 0
## 272 NA NA NA 0 0
## 273 NA NA NA 0 0
## 274 NA NA NA 0 1
## 275 NA NA NA 0 0
## 276 NA NA NA 0 0
## 277 NA NA NA 0 0
## 278 NA NA NA 0 0
## 279 NA NA NA 0 0
## 280 NA NA NA 0 0
## 281 NA NA NA 0 0
## 282 NA NA NA 0 0
## 283 NA NA NA 0 0
## 284 NA NA NA 0 0
## TotReceivedX2 Time
## 232 0 4:50
## 233 0 4:46
## 234 0 4:43
## 235 0 4:41
## 236 0 4:22
## 237 0 4:21
## 238 0 4:18
## 239 0 4:11
## 240 0 4:04
## 241 0 4:00
## 242 0 3:59
## 243 0 3:57
## 244 0 3:55
## 245 0 3:52
## 246 0 3:51
## 247 0 3:47
## 248 0 3:28
## 249 0 3:26
## 250 0 3:18
## 251 1 3:15
## 252 0 3:13
## 253 0 3:05
## 254 0 3:04
## 255 0 3:00
## 256 0 2:50
## 257 1 2:49
## 258 0 2:47
## 259 0 2:46
## 260 0 2:44
## 261 0 2:42
## 262 0 2:40
## 263 0 2:36
## 264 1 2:34
## 265 0 2:33
## 266 1 2:32
## 267 0 2:31
## 268 0 2:29
## 269 1 2:28
## 270 1 2:27
## 271 0 2:26
## 272 1 2:23
## 273 0 2:21
## 274 1 2:19
## 275 0 2:18
## 276 0 2:16
## 277 2 2:15
## 278 0 2:11
## 279 1 2:00
## 280 1 1:59
## 281 1 1:56
## 282 0 1:50
## 283 0 1:48
## 284 0 1:46
## FighterActionReactions.X1
## 232 <NA>
## 233 <NA>
## 234 misses L jab
## 235 misses R mt kick to low L lead leg
## 236 <NA>
## 237 misses R mt kick to low L lead leg
## 238 <NA>
## 239 <NA>
## 240 misses L jab
## 241 misses R mt kick to low L lead leg
## 242 <NA>
## 243 gets up out of takedown
## 244 <NA>
## 245 <NA>
## 246 misses R cross to face
## 247 misses R mt kick to low L lead leg
## 248 misses R cross to face
## 249 <NA>
## 250 misses R cross to face
## 251 lands body throw takedown gets up
## 252 misses illegal right knee to the face
## 253 misses L jab
## 254 misses L jab, misses R cross to face
## 255 misses R cross to face
## 256 misses L jab
## 257 lands R cross
## 258 misses R cross to face
## 259 misses R cross to face
## 260 misses R cross to face
## 261 misses L jab to face, ducks to avoid body takedown from missed L jab
## 262 misses R cross to face
## 263 misses L jab
## 264 lands R cross to face
## 265 misses R cross to face
## 266 lands L hook to face
## 267 misses R cross to face
## 268 <NA>
## 269 lands R cross
## 270 lands L upper to face
## 271 misses R upper to face, misses R upper to face
## 272 lands L knee to face
## 273 misses L jab, misses R cross to face
## 274 lands L jab to face
## 275 misses R cross to face
## 276 misses R mt kick to inside R leg
## 277 lands L jab to face, lands R cross to face
## 278 misses R cross to face
## 279 lands 2 hammer hits R face on top back
## 280 lands 2 hammer hits L face on top back
## 281 lands 2 hammer hits L face on top back
## 282 lands RNC
## 283 flips on back w RNC
## 284 <NA>
## FightersActionsReactions.X2 Notes Crossl.X1 Kneel.X1
## 232 misses R push kick Tate 0 0
## 233 misses R cross to face Tate 0 0
## 234 <NA> Tate 0 0
## 235 <NA> Tate 0 0
## 236 misses L jab Tate 0 0
## 237 <NA> Tate 0 0
## 238 misses L jab Tate 0 0
## 239 misses L mt kick inside L leg Tate 0 0
## 240 <NA> Tate 0 0
## 241 attempts one leg takedown Tate 0 0
## 242 lands one leg takedown Tate 0 0
## 243 <NA> Tate 0 0
## 244 tries for L leg takedown Tate 0 0
## 245 misses R knee, fails takedown Tate 0 0
## 246 <NA> Tate 0 0
## 247 <NA> Tate 0 0
## 248 goes for takedown at waist Tate 0 0
## 249 fails takedown Tate 0 0
## 250 misses L jab, goes for waist takedown Tate 0 0
## 251 on floor reaching Tate 0 0
## 252 gets up from floor Tate 0 0
## 253 misses R cross to face Tate 0 0
## 254 ducks Tate 0 0
## 255 lands L push kick to body Tate 0 0
## 256 misses L jab Tate 0 0
## 257 misses R cross to face Tate 1 0
## 258 <NA> Tate 0 0
## 259 <NA> Tate 0 0
## 260 <NA> Tate 0 0
## 261 misses L jab to face Tate 0 0
## 262 <NA> Tate 0 0
## 263 <NA> Tate 0 0
## 264 misses L jab and ducks Tate 1 0
## 265 <NA> Tate 0 0
## 266 holding arms up Tate 0 0
## 267 holding arms up Tate 0 0
## 268 stumbles to ground moving backward Tate 0 0
## 269 on ground trying to stand Tate 1 0
## 270 stands up blocking face Tate 0 0
## 271 blocking hits with arms guarding face Tate 0 0
## 272 <NA> Tate 0 1
## 273 guarding face with arms standing blocking hits Tate 0 0
## 274 misses L push kick Tate 0 0
## 275 guarding face with arms standing blocking hits Tate 0 0
## 276 <NA> Tate 0 0
## 277 holding arms up Tate 0 0
## 278 dives for takedown, ends up on ground Tate 0 0
## 279 on ground Tate 0 0
## 280 on ground Tate 0 0
## 281 <NA> Tate 0 0
## 282 <NA> Tate 0 0
## 283 <NA> Tate 0 0
## 284 taps out Tate 0 0
## Elbowl.X1 Hookl.X1 Jabl.X1 Kickl.X1 Crossl.X2 Kneel.X2 Elbowl.X2 Hookl.X2
## 232 0 0 0 0 0 0 0 0
## 233 0 0 0 0 0 0 0 0
## 234 0 0 0 0 0 0 0 0
## 235 0 0 0 0 0 0 0 0
## 236 0 0 0 0 0 0 0 0
## 237 0 0 0 0 0 0 0 0
## 238 0 0 0 0 0 0 0 0
## 239 0 0 0 0 0 0 0 0
## 240 0 0 0 0 0 0 0 0
## 241 0 0 0 0 0 0 0 0
## 242 0 0 0 0 0 0 0 0
## 243 0 0 0 0 0 0 0 0
## 244 0 0 0 0 0 0 0 0
## 245 0 0 0 0 0 0 0 0
## 246 0 0 0 0 0 0 0 0
## 247 0 0 0 0 0 0 0 0
## 248 0 0 0 0 0 0 0 0
## 249 0 0 0 0 0 0 0 0
## 250 0 0 0 0 0 0 0 0
## 251 0 0 0 0 0 0 0 0
## 252 0 0 0 0 0 0 0 0
## 253 0 0 0 0 0 0 0 0
## 254 0 0 0 0 0 0 0 0
## 255 0 0 0 0 0 0 0 0
## 256 0 0 0 0 0 0 0 0
## 257 0 0 0 0 0 0 0 0
## 258 0 0 0 0 0 0 0 0
## 259 0 0 0 0 0 0 0 0
## 260 0 0 0 0 0 0 0 0
## 261 0 0 0 0 0 0 0 0
## 262 0 0 0 0 0 0 0 0
## 263 0 0 0 0 0 0 0 0
## 264 0 0 0 0 0 0 0 0
## 265 0 0 0 0 0 0 0 0
## 266 0 1 0 0 0 0 0 0
## 267 0 0 0 0 0 0 0 0
## 268 0 0 0 0 0 0 0 0
## 269 0 0 0 0 0 0 0 0
## 270 0 0 0 0 0 0 0 0
## 271 0 0 0 0 0 0 0 0
## 272 0 0 0 0 0 0 0 0
## 273 0 0 0 0 0 0 0 0
## 274 0 0 1 0 0 0 0 0
## 275 0 0 0 0 0 0 0 0
## 276 0 0 0 0 0 0 0 0
## 277 0 0 1 0 0 0 0 0
## 278 0 0 0 0 0 0 0 0
## 279 0 0 0 0 0 0 0 0
## 280 0 0 0 0 0 0 0 0
## 281 0 0 0 0 0 0 0 0
## 282 0 0 0 0 0 0 0 0
## 283 0 0 0 0 0 0 0 0
## 284 0 0 0 0 0 0 0 0
## Jabl.X2 Kickl.X2 upperl.X1 upperl.X2 takedownl.X1 takedownl.X2 hammerl.X1
## 232 0 0 0 0 0 0 0
## 233 0 0 0 0 0 0 0
## 234 0 0 0 0 0 0 0
## 235 0 0 0 0 0 0 0
## 236 0 0 0 0 0 0 0
## 237 0 0 0 0 0 0 0
## 238 0 0 0 0 0 0 0
## 239 0 0 0 0 0 0 0
## 240 0 0 0 0 0 0 0
## 241 0 0 0 0 0 0 0
## 242 0 0 0 0 0 1 0
## 243 0 0 0 0 0 0 0
## 244 0 0 0 0 0 0 0
## 245 0 0 0 0 0 0 0
## 246 0 0 0 0 0 0 0
## 247 0 0 0 0 0 0 0
## 248 0 0 0 0 0 0 0
## 249 0 0 0 0 0 0 0
## 250 0 0 0 0 0 0 0
## 251 0 0 0 0 1 0 0
## 252 0 0 0 0 0 0 0
## 253 0 0 0 0 0 0 0
## 254 0 0 0 0 0 0 0
## 255 0 1 0 0 0 0 0
## 256 0 0 0 0 0 0 0
## 257 0 0 0 0 0 0 0
## 258 0 0 0 0 0 0 0
## 259 0 0 0 0 0 0 0
## 260 0 0 0 0 0 0 0
## 261 0 0 0 0 0 0 0
## 262 0 0 0 0 0 0 0
## 263 0 0 0 0 0 0 0
## 264 0 0 0 0 0 0 0
## 265 0 0 0 0 0 0 0
## 266 0 0 0 0 0 0 0
## 267 0 0 0 0 0 0 0
## 268 0 0 0 0 0 0 0
## 269 0 0 0 0 0 0 0
## 270 0 0 1 0 0 0 0
## 271 0 0 0 0 0 0 0
## 272 0 0 0 0 0 0 0
## 273 0 0 0 0 0 0 0
## 274 0 0 0 0 0 0 0
## 275 0 0 0 0 0 0 0
## 276 0 0 0 0 0 0 0
## 277 0 0 0 0 0 0 0
## 278 0 0 0 0 0 0 0
## 279 0 0 0 0 0 0 1
## 280 0 0 0 0 0 0 1
## 281 0 0 0 0 0 0 1
## 282 0 0 0 0 0 0 0
## 283 0 0 0 0 0 0 0
## 284 0 0 0 0 0 0 0
## hammerl.X2 Cross2l.X1 Knee2l.X1 Elbow2l.X1 Hook2l.X1 Jab2l.X1 Kick2l.X1
## 232 0 0 0 0 0 0 0
## 233 0 0 0 0 0 0 0
## 234 0 0 0 0 0 0 0
## 235 0 0 0 0 0 0 0
## 236 0 0 0 0 0 0 0
## 237 0 0 0 0 0 0 0
## 238 0 0 0 0 0 0 0
## 239 0 0 0 0 0 0 0
## 240 0 0 0 0 0 0 0
## 241 0 0 0 0 0 0 0
## 242 0 0 0 0 0 0 0
## 243 0 0 0 0 0 0 0
## 244 0 0 0 0 0 0 0
## 245 0 0 0 0 0 0 0
## 246 0 0 0 0 0 0 0
## 247 0 0 0 0 0 0 0
## 248 0 0 0 0 0 0 0
## 249 0 0 0 0 0 0 0
## 250 0 0 0 0 0 0 0
## 251 0 0 0 0 0 0 0
## 252 0 0 0 0 0 0 0
## 253 0 0 0 0 0 0 0
## 254 0 0 0 0 0 0 0
## 255 0 0 0 0 0 0 0
## 256 0 0 0 0 0 0 0
## 257 0 0 0 0 0 0 0
## 258 0 0 0 0 0 0 0
## 259 0 0 0 0 0 0 0
## 260 0 0 0 0 0 0 0
## 261 0 0 0 0 0 0 0
## 262 0 0 0 0 0 0 0
## 263 0 0 0 0 0 0 0
## 264 0 0 0 0 0 0 0
## 265 0 0 0 0 0 0 0
## 266 0 0 0 0 0 0 0
## 267 0 0 0 0 0 0 0
## 268 0 0 0 0 0 0 0
## 269 0 0 0 0 0 0 0
## 270 0 0 0 0 0 0 0
## 271 0 0 0 0 0 0 0
## 272 0 0 0 0 0 0 0
## 273 0 0 0 0 0 0 0
## 274 0 0 0 0 0 0 0
## 275 0 0 0 0 0 0 0
## 276 0 0 0 0 0 0 0
## 277 0 1 0 0 0 0 0
## 278 0 0 0 0 0 0 0
## 279 0 0 0 0 0 0 0
## 280 0 0 0 0 0 0 0
## 281 0 0 0 0 0 0 0
## 282 0 0 0 0 0 0 0
## 283 0 0 0 0 0 0 0
## 284 0 0 0 0 0 0 0
## Cross2l.X2 Knee2l.X2 Elbow2l.X2 Hook2l.X2 Jab2l.X2 Kick2l.X2 upper2l.X1
## 232 0 0 0 0 0 0 0
## 233 0 0 0 0 0 0 0
## 234 0 0 0 0 0 0 0
## 235 0 0 0 0 0 0 0
## 236 0 0 0 0 0 0 0
## 237 0 0 0 0 0 0 0
## 238 0 0 0 0 0 0 0
## 239 0 0 0 0 0 0 0
## 240 0 0 0 0 0 0 0
## 241 0 0 0 0 0 0 0
## 242 0 0 0 0 0 0 0
## 243 0 0 0 0 0 0 0
## 244 0 0 0 0 0 0 0
## 245 0 0 0 0 0 0 0
## 246 0 0 0 0 0 0 0
## 247 0 0 0 0 0 0 0
## 248 0 0 0 0 0 0 0
## 249 0 0 0 0 0 0 0
## 250 0 0 0 0 0 0 0
## 251 0 0 0 0 0 0 0
## 252 0 0 0 0 0 0 0
## 253 0 0 0 0 0 0 0
## 254 0 0 0 0 0 0 0
## 255 0 0 0 0 0 0 0
## 256 0 0 0 0 0 0 0
## 257 0 0 0 0 0 0 0
## 258 0 0 0 0 0 0 0
## 259 0 0 0 0 0 0 0
## 260 0 0 0 0 0 0 0
## 261 0 0 0 0 0 0 0
## 262 0 0 0 0 0 0 0
## 263 0 0 0 0 0 0 0
## 264 0 0 0 0 0 0 0
## 265 0 0 0 0 0 0 0
## 266 0 0 0 0 0 0 0
## 267 0 0 0 0 0 0 0
## 268 0 0 0 0 0 0 0
## 269 0 0 0 0 0 0 0
## 270 0 0 0 0 0 0 0
## 271 0 0 0 0 0 0 0
## 272 0 0 0 0 0 0 0
## 273 0 0 0 0 0 0 0
## 274 0 0 0 0 0 0 0
## 275 0 0 0 0 0 0 0
## 276 0 0 0 0 0 0 0
## 277 0 0 0 0 0 0 0
## 278 0 0 0 0 0 0 0
## 279 0 0 0 0 0 0 0
## 280 0 0 0 0 0 0 0
## 281 0 0 0 0 0 0 0
## 282 0 0 0 0 0 0 0
## 283 0 0 0 0 0 0 0
## 284 0 0 0 0 0 0 0
## upper2l.X2 takedown2l.X1 takedown2l.X2 hammer2l.X1 hammer2l.X2 Cross3l.X1
## 232 0 0 0 0 0 0
## 233 0 0 0 0 0 0
## 234 0 0 0 0 0 0
## 235 0 0 0 0 0 0
## 236 0 0 0 0 0 0
## 237 0 0 0 0 0 0
## 238 0 0 0 0 0 0
## 239 0 0 0 0 0 0
## 240 0 0 0 0 0 0
## 241 0 0 0 0 0 0
## 242 0 0 0 0 0 0
## 243 0 0 0 0 0 0
## 244 0 0 0 0 0 0
## 245 0 0 0 0 0 0
## 246 0 0 0 0 0 0
## 247 0 0 0 0 0 0
## 248 0 0 0 0 0 0
## 249 0 0 0 0 0 0
## 250 0 0 0 0 0 0
## 251 0 0 0 0 0 0
## 252 0 0 0 0 0 0
## 253 0 0 0 0 0 0
## 254 0 0 0 0 0 0
## 255 0 0 0 0 0 0
## 256 0 0 0 0 0 0
## 257 0 0 0 0 0 0
## 258 0 0 0 0 0 0
## 259 0 0 0 0 0 0
## 260 0 0 0 0 0 0
## 261 0 0 0 0 0 0
## 262 0 0 0 0 0 0
## 263 0 0 0 0 0 0
## 264 0 0 0 0 0 0
## 265 0 0 0 0 0 0
## 266 0 0 0 0 0 0
## 267 0 0 0 0 0 0
## 268 0 0 0 0 0 0
## 269 0 0 0 0 0 0
## 270 0 0 0 0 0 0
## 271 0 0 0 0 0 0
## 272 0 0 0 0 0 0
## 273 0 0 0 0 0 0
## 274 0 0 0 0 0 0
## 275 0 0 0 0 0 0
## 276 0 0 0 0 0 0
## 277 0 0 0 0 0 0
## 278 0 0 0 0 0 0
## 279 0 0 0 0 0 0
## 280 0 0 0 0 0 0
## 281 0 0 0 0 0 0
## 282 0 0 0 0 0 0
## 283 0 0 0 0 0 0
## 284 0 0 0 0 0 0
## Knee3l.X1 Elbow3l.X1 Hook3l.X1 Jab3l.X1 Kick3l.X1 Cross3l.X2 Knee3l.X2
## 232 0 0 0 0 0 0 0
## 233 0 0 0 0 0 0 0
## 234 0 0 0 0 0 0 0
## 235 0 0 0 0 0 0 0
## 236 0 0 0 0 0 0 0
## 237 0 0 0 0 0 0 0
## 238 0 0 0 0 0 0 0
## 239 0 0 0 0 0 0 0
## 240 0 0 0 0 0 0 0
## 241 0 0 0 0 0 0 0
## 242 0 0 0 0 0 0 0
## 243 0 0 0 0 0 0 0
## 244 0 0 0 0 0 0 0
## 245 0 0 0 0 0 0 0
## 246 0 0 0 0 0 0 0
## 247 0 0 0 0 0 0 0
## 248 0 0 0 0 0 0 0
## 249 0 0 0 0 0 0 0
## 250 0 0 0 0 0 0 0
## 251 0 0 0 0 0 0 0
## 252 0 0 0 0 0 0 0
## 253 0 0 0 0 0 0 0
## 254 0 0 0 0 0 0 0
## 255 0 0 0 0 0 0 0
## 256 0 0 0 0 0 0 0
## 257 0 0 0 0 0 0 0
## 258 0 0 0 0 0 0 0
## 259 0 0 0 0 0 0 0
## 260 0 0 0 0 0 0 0
## 261 0 0 0 0 0 0 0
## 262 0 0 0 0 0 0 0
## 263 0 0 0 0 0 0 0
## 264 0 0 0 0 0 0 0
## 265 0 0 0 0 0 0 0
## 266 0 0 0 0 0 0 0
## 267 0 0 0 0 0 0 0
## 268 0 0 0 0 0 0 0
## 269 0 0 0 0 0 0 0
## 270 0 0 0 0 0 0 0
## 271 0 0 0 0 0 0 0
## 272 0 0 0 0 0 0 0
## 273 0 0 0 0 0 0 0
## 274 0 0 0 0 0 0 0
## 275 0 0 0 0 0 0 0
## 276 0 0 0 0 0 0 0
## 277 0 0 0 0 0 0 0
## 278 0 0 0 0 0 0 0
## 279 0 0 0 0 0 0 0
## 280 0 0 0 0 0 0 0
## 281 0 0 0 0 0 0 0
## 282 0 0 0 0 0 0 0
## 283 0 0 0 0 0 0 0
## 284 0 0 0 0 0 0 0
## Elbow3l.X2 Hook3l.X2 Jab3l.X2 Kick3l.X2 upper3l.X1 upper3l.X2 takedown3l.X1
## 232 0 0 0 0 0 0 0
## 233 0 0 0 0 0 0 0
## 234 0 0 0 0 0 0 0
## 235 0 0 0 0 0 0 0
## 236 0 0 0 0 0 0 0
## 237 0 0 0 0 0 0 0
## 238 0 0 0 0 0 0 0
## 239 0 0 0 0 0 0 0
## 240 0 0 0 0 0 0 0
## 241 0 0 0 0 0 0 0
## 242 0 0 0 0 0 0 0
## 243 0 0 0 0 0 0 0
## 244 0 0 0 0 0 0 0
## 245 0 0 0 0 0 0 0
## 246 0 0 0 0 0 0 0
## 247 0 0 0 0 0 0 0
## 248 0 0 0 0 0 0 0
## 249 0 0 0 0 0 0 0
## 250 0 0 0 0 0 0 0
## 251 0 0 0 0 0 0 0
## 252 0 0 0 0 0 0 0
## 253 0 0 0 0 0 0 0
## 254 0 0 0 0 0 0 0
## 255 0 0 0 0 0 0 0
## 256 0 0 0 0 0 0 0
## 257 0 0 0 0 0 0 0
## 258 0 0 0 0 0 0 0
## 259 0 0 0 0 0 0 0
## 260 0 0 0 0 0 0 0
## 261 0 0 0 0 0 0 0
## 262 0 0 0 0 0 0 0
## 263 0 0 0 0 0 0 0
## 264 0 0 0 0 0 0 0
## 265 0 0 0 0 0 0 0
## 266 0 0 0 0 0 0 0
## 267 0 0 0 0 0 0 0
## 268 0 0 0 0 0 0 0
## 269 0 0 0 0 0 0 0
## 270 0 0 0 0 0 0 0
## 271 0 0 0 0 0 0 0
## 272 0 0 0 0 0 0 0
## 273 0 0 0 0 0 0 0
## 274 0 0 0 0 0 0 0
## 275 0 0 0 0 0 0 0
## 276 0 0 0 0 0 0 0
## 277 0 0 0 0 0 0 0
## 278 0 0 0 0 0 0 0
## 279 0 0 0 0 0 0 0
## 280 0 0 0 0 0 0 0
## 281 0 0 0 0 0 0 0
## 282 0 0 0 0 0 0 0
## 283 0 0 0 0 0 0 0
## 284 0 0 0 0 0 0 0
## takedown3l.X2 hammer3l.X1 hammer3l.X2 Crossm.X1 Kneem.X1 Elbowm.X1 Hookm.X1
## 232 0 0 0 0 0 0 0
## 233 0 0 0 0 0 0 0
## 234 0 0 0 0 0 0 0
## 235 0 0 0 0 0 0 0
## 236 0 0 0 0 0 0 0
## 237 0 0 0 0 0 0 0
## 238 0 0 0 0 0 0 0
## 239 0 0 0 0 0 0 0
## 240 0 0 0 0 0 0 0
## 241 0 0 0 0 0 0 0
## 242 0 0 0 0 0 0 0
## 243 0 0 0 0 0 0 0
## 244 0 0 0 0 0 0 0
## 245 0 0 0 0 0 0 0
## 246 0 0 0 1 0 0 0
## 247 0 0 0 0 0 0 0
## 248 0 0 0 1 0 0 0
## 249 0 0 0 0 0 0 0
## 250 0 0 0 1 0 0 0
## 251 0 0 0 0 0 0 0
## 252 0 0 0 0 1 0 0
## 253 0 0 0 0 0 0 0
## 254 0 0 0 0 0 0 0
## 255 0 0 0 1 0 0 0
## 256 0 0 0 0 0 0 0
## 257 0 0 0 0 0 0 0
## 258 0 0 0 1 0 0 0
## 259 0 0 0 1 0 0 0
## 260 0 0 0 1 0 0 0
## 261 0 0 0 0 0 0 0
## 262 0 0 0 1 0 0 0
## 263 0 0 0 0 0 0 0
## 264 0 0 0 0 0 0 0
## 265 0 0 0 1 0 0 0
## 266 0 0 0 0 0 0 0
## 267 0 0 0 1 0 0 0
## 268 0 0 0 0 0 0 0
## 269 0 0 0 0 0 0 0
## 270 0 0 0 0 0 0 0
## 271 0 0 0 0 0 0 0
## 272 0 0 0 0 0 0 0
## 273 0 0 0 0 0 0 0
## 274 0 0 0 0 0 0 0
## 275 0 0 0 1 0 0 0
## 276 0 0 0 0 0 0 0
## 277 0 0 0 0 0 0 0
## 278 0 0 0 1 0 0 0
## 279 0 0 0 0 0 0 0
## 280 0 0 0 0 0 0 0
## 281 0 0 0 0 0 0 0
## 282 0 0 0 0 0 0 0
## 283 0 0 0 0 0 0 0
## 284 0 0 0 0 0 0 0
## Jabm.X1 Kickm.X1 Crossm.X2 Kneem.X2 Elbowm.X2 Hookm.X2 Jabm.X2 Kickm.X2
## 232 0 0 0 0 0 0 0 1
## 233 0 0 1 0 0 0 0 0
## 234 1 0 0 0 0 0 0 0
## 235 0 1 0 0 0 0 0 0
## 236 0 0 0 0 0 0 1 0
## 237 0 1 0 0 0 0 0 0
## 238 0 0 0 0 0 0 1 0
## 239 0 0 0 0 0 0 0 1
## 240 1 0 0 0 0 0 0 0
## 241 0 1 0 0 0 0 0 0
## 242 0 0 0 0 0 0 0 0
## 243 0 0 0 0 0 0 0 0
## 244 0 0 0 0 0 0 0 0
## 245 0 0 0 1 0 0 0 0
## 246 0 0 0 0 0 0 0 0
## 247 0 1 0 0 0 0 0 0
## 248 0 0 0 0 0 0 0 0
## 249 0 0 0 0 0 0 0 0
## 250 0 0 0 0 0 0 1 0
## 251 0 0 0 0 0 0 0 0
## 252 0 0 0 0 0 0 0 0
## 253 1 0 1 0 0 0 0 0
## 254 1 0 0 0 0 0 0 0
## 255 0 0 0 0 0 0 0 0
## 256 1 0 0 0 0 0 1 0
## 257 0 0 1 0 0 0 0 0
## 258 0 0 0 0 0 0 0 0
## 259 0 0 0 0 0 0 0 0
## 260 0 0 0 0 0 0 0 0
## 261 1 0 0 0 0 0 1 0
## 262 0 0 0 0 0 0 0 0
## 263 1 0 0 0 0 0 0 0
## 264 0 0 0 0 0 0 1 0
## 265 0 0 0 0 0 0 0 0
## 266 0 0 0 0 0 0 0 0
## 267 0 0 0 0 0 0 0 0
## 268 0 0 0 0 0 0 0 0
## 269 0 0 0 0 0 0 0 0
## 270 0 0 0 0 0 0 0 0
## 271 0 0 0 0 0 0 0 0
## 272 0 0 0 0 0 0 0 0
## 273 1 0 0 0 0 0 0 0
## 274 0 0 0 0 0 0 0 1
## 275 0 0 0 0 0 0 0 0
## 276 0 1 0 0 0 0 0 0
## 277 0 0 0 0 0 0 0 0
## 278 0 0 0 0 0 0 0 0
## 279 0 0 0 0 0 0 0 0
## 280 0 0 0 0 0 0 0 0
## 281 0 0 0 0 0 0 0 0
## 282 0 0 0 0 0 0 0 0
## 283 0 0 0 0 0 0 0 0
## 284 0 0 0 0 0 0 0 0
## upperm.X1 upperm.X2 takedownm.X1 takedownm.X2 hammerm.X1 hammerm.X2
## 232 0 0 0 0 0 0
## 233 0 0 0 0 0 0
## 234 0 0 0 0 0 0
## 235 0 0 0 0 0 0
## 236 0 0 0 0 0 0
## 237 0 0 0 0 0 0
## 238 0 0 0 0 0 0
## 239 0 0 0 0 0 0
## 240 0 0 0 0 0 0
## 241 0 0 0 0 0 0
## 242 0 0 0 0 0 0
## 243 0 0 0 0 0 0
## 244 0 0 0 0 0 0
## 245 0 0 0 0 0 0
## 246 0 0 0 0 0 0
## 247 0 0 0 0 0 0
## 248 0 0 0 0 0 0
## 249 0 0 0 0 0 0
## 250 0 0 0 0 0 0
## 251 0 0 0 0 0 0
## 252 0 0 0 0 0 0
## 253 0 0 0 0 0 0
## 254 0 0 0 0 0 0
## 255 0 0 0 0 0 0
## 256 0 0 0 0 0 0
## 257 0 0 0 0 0 0
## 258 0 0 0 0 0 0
## 259 0 0 0 0 0 0
## 260 0 0 0 0 0 0
## 261 0 0 0 0 0 0
## 262 0 0 0 0 0 0
## 263 0 0 0 0 0 0
## 264 0 0 0 0 0 0
## 265 0 0 0 0 0 0
## 266 0 0 0 0 0 0
## 267 0 0 0 0 0 0
## 268 0 0 0 0 0 0
## 269 0 0 0 0 0 0
## 270 0 0 0 0 0 0
## 271 1 0 0 0 0 0
## 272 0 0 0 0 0 0
## 273 0 0 0 0 0 0
## 274 0 0 0 0 0 0
## 275 0 0 0 0 0 0
## 276 0 0 0 0 0 0
## 277 0 0 0 0 0 0
## 278 0 0 0 0 0 0
## 279 0 0 0 0 0 0
## 280 0 0 0 0 0 0
## 281 0 0 0 0 0 0
## 282 0 0 0 0 0 0
## 283 0 0 0 0 0 0
## 284 0 0 0 0 0 0
## Cross2m.X1 Knee2m.X1 Elbow2m.X1 Hook2m.X1 Jab2m.X1 Kick2m.X1 Cross2m.X2
## 232 0 0 0 0 0 0 0
## 233 0 0 0 0 0 0 0
## 234 0 0 0 0 0 0 0
## 235 0 0 0 0 0 0 0
## 236 0 0 0 0 0 0 0
## 237 0 0 0 0 0 0 0
## 238 0 0 0 0 0 0 0
## 239 0 0 0 0 0 0 0
## 240 0 0 0 0 0 0 0
## 241 0 0 0 0 0 0 0
## 242 0 0 0 0 0 0 0
## 243 0 0 0 0 0 0 0
## 244 0 0 0 0 0 0 0
## 245 0 0 0 0 0 0 0
## 246 0 0 0 0 0 0 0
## 247 0 0 0 0 0 0 0
## 248 0 0 0 0 0 0 0
## 249 0 0 0 0 0 0 0
## 250 0 0 0 0 0 0 0
## 251 0 0 0 0 0 0 0
## 252 0 0 0 0 0 0 0
## 253 0 0 0 0 0 0 0
## 254 1 0 0 0 0 0 0
## 255 0 0 0 0 0 0 0
## 256 0 0 0 0 0 0 0
## 257 0 0 0 0 0 0 0
## 258 0 0 0 0 0 0 0
## 259 0 0 0 0 0 0 0
## 260 0 0 0 0 0 0 0
## 261 0 0 0 0 1 0 0
## 262 0 0 0 0 0 0 0
## 263 0 0 0 0 0 0 0
## 264 0 0 0 0 0 0 0
## 265 0 0 0 0 0 0 0
## 266 0 0 0 0 0 0 0
## 267 0 0 0 0 0 0 0
## 268 0 0 0 0 0 0 0
## 269 0 0 0 0 0 0 0
## 270 0 0 0 0 0 0 0
## 271 0 0 0 0 0 0 0
## 272 0 0 0 0 0 0 0
## 273 1 0 0 0 0 0 0
## 274 0 0 0 0 0 0 0
## 275 0 0 0 0 0 0 0
## 276 0 0 0 0 0 0 0
## 277 0 0 0 0 0 0 0
## 278 0 0 0 0 0 0 0
## 279 0 0 0 0 0 0 0
## 280 0 0 0 0 0 0 0
## 281 0 0 0 0 0 0 0
## 282 0 0 0 0 0 0 0
## 283 0 0 0 0 0 0 0
## 284 0 0 0 0 0 0 0
## Knee2m.X2 Elbow2m.X2 Hook2m.X2 Jab2m.X2 Kick2m.X2 upper2m.X1 upper2m.X2
## 232 0 0 0 0 0 0 0
## 233 0 0 0 0 0 0 0
## 234 0 0 0 0 0 0 0
## 235 0 0 0 0 0 0 0
## 236 0 0 0 0 0 0 0
## 237 0 0 0 0 0 0 0
## 238 0 0 0 0 0 0 0
## 239 0 0 0 0 0 0 0
## 240 0 0 0 0 0 0 0
## 241 0 0 0 0 0 0 0
## 242 0 0 0 0 0 0 0
## 243 0 0 0 0 0 0 0
## 244 0 0 0 0 0 0 0
## 245 0 0 0 0 0 0 0
## 246 0 0 0 0 0 0 0
## 247 0 0 0 0 0 0 0
## 248 0 0 0 0 0 0 0
## 249 0 0 0 0 0 0 0
## 250 0 0 0 0 0 0 0
## 251 0 0 0 0 0 0 0
## 252 0 0 0 0 0 0 0
## 253 0 0 0 0 0 0 0
## 254 0 0 0 0 0 0 0
## 255 0 0 0 0 0 0 0
## 256 0 0 0 0 0 0 0
## 257 0 0 0 0 0 0 0
## 258 0 0 0 0 0 0 0
## 259 0 0 0 0 0 0 0
## 260 0 0 0 0 0 0 0
## 261 0 0 0 0 0 0 0
## 262 0 0 0 0 0 0 0
## 263 0 0 0 0 0 0 0
## 264 0 0 0 0 0 0 0
## 265 0 0 0 0 0 0 0
## 266 0 0 0 0 0 0 0
## 267 0 0 0 0 0 0 0
## 268 0 0 0 0 0 0 0
## 269 0 0 0 0 0 0 0
## 270 0 0 0 0 0 0 0
## 271 0 0 0 0 0 1 0
## 272 0 0 0 0 0 0 0
## 273 0 0 0 0 0 0 0
## 274 0 0 0 0 0 0 0
## 275 0 0 0 0 0 0 0
## 276 0 0 0 0 0 0 0
## 277 0 0 0 0 0 0 0
## 278 0 0 0 0 0 0 0
## 279 0 0 0 0 0 0 0
## 280 0 0 0 0 0 0 0
## 281 0 0 0 0 0 0 0
## 282 0 0 0 0 0 0 0
## 283 0 0 0 0 0 0 0
## 284 0 0 0 0 0 0 0
## takedown2m.X1 takedown2m.X2 hammer2m.X1 hammer2m.X2 Cross3m.X1 Knee3m.X1
## 232 0 0 0 0 0 0
## 233 0 0 0 0 0 0
## 234 0 0 0 0 0 0
## 235 0 0 0 0 0 0
## 236 0 0 0 0 0 0
## 237 0 0 0 0 0 0
## 238 0 0 0 0 0 0
## 239 0 0 0 0 0 0
## 240 0 0 0 0 0 0
## 241 0 0 0 0 0 0
## 242 0 0 0 0 0 0
## 243 0 0 0 0 0 0
## 244 0 0 0 0 0 0
## 245 0 0 0 0 0 0
## 246 0 0 0 0 0 0
## 247 0 0 0 0 0 0
## 248 0 0 0 0 0 0
## 249 0 0 0 0 0 0
## 250 0 0 0 0 0 0
## 251 0 0 0 0 0 0
## 252 0 0 0 0 0 0
## 253 0 0 0 0 0 0
## 254 0 0 0 0 0 0
## 255 0 0 0 0 0 0
## 256 0 0 0 0 0 0
## 257 0 0 0 0 0 0
## 258 0 0 0 0 0 0
## 259 0 0 0 0 0 0
## 260 0 0 0 0 0 0
## 261 0 0 0 0 0 0
## 262 0 0 0 0 0 0
## 263 0 0 0 0 0 0
## 264 0 0 0 0 0 0
## 265 0 0 0 0 0 0
## 266 0 0 0 0 0 0
## 267 0 0 0 0 0 0
## 268 0 0 0 0 0 0
## 269 0 0 0 0 0 0
## 270 0 0 0 0 0 0
## 271 0 0 0 0 0 0
## 272 0 0 0 0 0 0
## 273 0 0 0 0 0 0
## 274 0 0 0 0 0 0
## 275 0 0 0 0 0 0
## 276 0 0 0 0 0 0
## 277 0 0 0 0 0 0
## 278 0 0 0 0 0 0
## 279 0 0 0 0 0 0
## 280 0 0 0 0 0 0
## 281 0 0 0 0 0 0
## 282 0 0 0 0 0 0
## 283 0 0 0 0 0 0
## 284 0 0 0 0 0 0
## Elbow3m.X1 Hook3m.X1 Jab3m.X1 Kick3m.X1 Cross3m.X2 Knee3m.X2 Elbow3m.X2
## 232 0 0 0 0 0 0 0
## 233 0 0 0 0 0 0 0
## 234 0 0 0 0 0 0 0
## 235 0 0 0 0 0 0 0
## 236 0 0 0 0 0 0 0
## 237 0 0 0 0 0 0 0
## 238 0 0 0 0 0 0 0
## 239 0 0 0 0 0 0 0
## 240 0 0 0 0 0 0 0
## 241 0 0 0 0 0 0 0
## 242 0 0 0 0 0 0 0
## 243 0 0 0 0 0 0 0
## 244 0 0 0 0 0 0 0
## 245 0 0 0 0 0 0 0
## 246 0 0 0 0 0 0 0
## 247 0 0 0 0 0 0 0
## 248 0 0 0 0 0 0 0
## 249 0 0 0 0 0 0 0
## 250 0 0 0 0 0 0 0
## 251 0 0 0 0 0 0 0
## 252 0 0 0 0 0 0 0
## 253 0 0 0 0 0 0 0
## 254 0 0 0 0 0 0 0
## 255 0 0 0 0 0 0 0
## 256 0 0 0 0 0 0 0
## 257 0 0 0 0 0 0 0
## 258 0 0 0 0 0 0 0
## 259 0 0 0 0 0 0 0
## 260 0 0 0 0 0 0 0
## 261 0 0 0 0 0 0 0
## 262 0 0 0 0 0 0 0
## 263 0 0 0 0 0 0 0
## 264 0 0 0 0 0 0 0
## 265 0 0 0 0 0 0 0
## 266 0 0 0 0 0 0 0
## 267 0 0 0 0 0 0 0
## 268 0 0 0 0 0 0 0
## 269 0 0 0 0 0 0 0
## 270 0 0 0 0 0 0 0
## 271 0 0 0 0 0 0 0
## 272 0 0 0 0 0 0 0
## 273 0 0 0 0 0 0 0
## 274 0 0 0 0 0 0 0
## 275 0 0 0 0 0 0 0
## 276 0 0 0 0 0 0 0
## 277 0 0 0 0 0 0 0
## 278 0 0 0 0 0 0 0
## 279 0 0 0 0 0 0 0
## 280 0 0 0 0 0 0 0
## 281 0 0 0 0 0 0 0
## 282 0 0 0 0 0 0 0
## 283 0 0 0 0 0 0 0
## 284 0 0 0 0 0 0 0
## Hook3m.X2 Jab3m.X2 Kick3m.X2 upper3m.X1 upper3m.X2 takedown3m.X1
## 232 0 0 0 0 0 0
## 233 0 0 0 0 0 0
## 234 0 0 0 0 0 0
## 235 0 0 0 0 0 0
## 236 0 0 0 0 0 0
## 237 0 0 0 0 0 0
## 238 0 0 0 0 0 0
## 239 0 0 0 0 0 0
## 240 0 0 0 0 0 0
## 241 0 0 0 0 0 0
## 242 0 0 0 0 0 0
## 243 0 0 0 0 0 0
## 244 0 0 0 0 0 0
## 245 0 0 0 0 0 0
## 246 0 0 0 0 0 0
## 247 0 0 0 0 0 0
## 248 0 0 0 0 0 0
## 249 0 0 0 0 0 0
## 250 0 0 0 0 0 0
## 251 0 0 0 0 0 0
## 252 0 0 0 0 0 0
## 253 0 0 0 0 0 0
## 254 0 0 0 0 0 0
## 255 0 0 0 0 0 0
## 256 0 0 0 0 0 0
## 257 0 0 0 0 0 0
## 258 0 0 0 0 0 0
## 259 0 0 0 0 0 0
## 260 0 0 0 0 0 0
## 261 0 0 0 0 0 0
## 262 0 0 0 0 0 0
## 263 0 0 0 0 0 0
## 264 0 0 0 0 0 0
## 265 0 0 0 0 0 0
## 266 0 0 0 0 0 0
## 267 0 0 0 0 0 0
## 268 0 0 0 0 0 0
## 269 0 0 0 0 0 0
## 270 0 0 0 0 0 0
## 271 0 0 0 0 0 0
## 272 0 0 0 0 0 0
## 273 0 0 0 0 0 0
## 274 0 0 0 0 0 0
## 275 0 0 0 0 0 0
## 276 0 0 0 0 0 0
## 277 0 0 0 0 0 0
## 278 0 0 0 0 0 0
## 279 0 0 0 0 0 0
## 280 0 0 0 0 0 0
## 281 0 0 0 0 0 0
## 282 0 0 0 0 0 0
## 283 0 0 0 0 0 0
## 284 0 0 0 0 0 0
## takedown3m.X2 hammer3m.X1 hammer3m.X2 Crossr.X1 Kneer.X1 Elbowr.X1 Hookr.X1
## 232 0 0 0 0 0 0 0
## 233 0 0 0 0 0 0 0
## 234 0 0 0 0 0 0 0
## 235 0 0 0 0 0 0 0
## 236 0 0 0 0 0 0 0
## 237 0 0 0 0 0 0 0
## 238 0 0 0 0 0 0 0
## 239 0 0 0 0 0 0 0
## 240 0 0 0 0 0 0 0
## 241 0 0 0 0 0 0 0
## 242 0 0 0 0 0 0 0
## 243 0 0 0 0 0 0 0
## 244 0 0 0 0 0 0 0
## 245 0 0 0 0 0 0 0
## 246 0 0 0 0 0 0 0
## 247 0 0 0 0 0 0 0
## 248 0 0 0 0 0 0 0
## 249 0 0 0 0 0 0 0
## 250 0 0 0 0 0 0 0
## 251 0 0 0 0 0 0 0
## 252 0 0 0 0 0 0 0
## 253 0 0 0 0 0 0 0
## 254 0 0 0 0 0 0 0
## 255 0 0 0 0 0 0 0
## 256 0 0 0 0 0 0 0
## 257 0 0 0 0 0 0 0
## 258 0 0 0 0 0 0 0
## 259 0 0 0 0 0 0 0
## 260 0 0 0 0 0 0 0
## 261 0 0 0 0 0 0 0
## 262 0 0 0 0 0 0 0
## 263 0 0 0 0 0 0 0
## 264 0 0 0 0 0 0 0
## 265 0 0 0 0 0 0 0
## 266 0 0 0 0 0 0 0
## 267 0 0 0 0 0 0 0
## 268 0 0 0 0 0 0 0
## 269 0 0 0 0 0 0 0
## 270 0 0 0 0 0 0 0
## 271 0 0 0 0 0 0 0
## 272 0 0 0 0 0 0 0
## 273 0 0 0 0 0 0 0
## 274 0 0 0 0 0 0 0
## 275 0 0 0 0 0 0 0
## 276 0 0 0 0 0 0 0
## 277 0 0 0 0 0 0 0
## 278 0 0 0 0 0 0 0
## 279 0 0 0 0 0 0 0
## 280 0 0 0 0 0 0 0
## 281 0 0 0 0 0 0 0
## 282 0 0 0 0 0 0 0
## 283 0 0 0 0 0 0 0
## 284 0 0 0 0 0 0 0
## Jabr.X1 Kickr.X1 Crossr.X2 Kneer.X2 Elbowr.X2 Hookr.X2 Jabr.X2 Kickr.X2
## 232 0 0 0 0 0 0 0 0
## 233 0 0 0 0 0 0 0 0
## 234 0 0 0 0 0 0 0 0
## 235 0 0 0 0 0 0 0 0
## 236 0 0 0 0 0 0 0 0
## 237 0 0 0 0 0 0 0 0
## 238 0 0 0 0 0 0 0 0
## 239 0 0 0 0 0 0 0 0
## 240 0 0 0 0 0 0 0 0
## 241 0 0 0 0 0 0 0 0
## 242 0 0 0 0 0 0 0 0
## 243 0 0 0 0 0 0 0 0
## 244 0 0 0 0 0 0 0 0
## 245 0 0 0 0 0 0 0 0
## 246 0 0 0 0 0 0 0 0
## 247 0 0 0 0 0 0 0 0
## 248 0 0 0 0 0 0 0 0
## 249 0 0 0 0 0 0 0 0
## 250 0 0 0 0 0 0 0 0
## 251 0 0 0 0 0 0 0 0
## 252 0 0 0 0 0 0 0 0
## 253 0 0 0 0 0 0 0 0
## 254 0 0 0 0 0 0 0 0
## 255 0 1 0 0 0 0 0 0
## 256 0 0 0 0 0 0 0 0
## 257 0 0 1 0 0 0 0 0
## 258 0 0 0 0 0 0 0 0
## 259 0 0 0 0 0 0 0 0
## 260 0 0 0 0 0 0 0 0
## 261 0 0 0 0 0 0 0 0
## 262 0 0 0 0 0 0 0 0
## 263 0 0 0 0 0 0 0 0
## 264 0 0 1 0 0 0 0 0
## 265 0 0 0 0 0 0 0 0
## 266 0 0 0 0 0 1 0 0
## 267 0 0 0 0 0 0 0 0
## 268 0 0 0 0 0 0 0 0
## 269 0 0 1 0 0 0 0 0
## 270 0 0 0 0 0 0 0 0
## 271 0 0 0 0 0 0 0 0
## 272 0 0 0 1 0 0 0 0
## 273 0 0 0 0 0 0 0 0
## 274 0 0 0 0 0 0 1 0
## 275 0 0 0 0 0 0 0 0
## 276 0 0 0 0 0 0 0 0
## 277 0 0 0 0 0 0 1 0
## 278 0 0 0 0 0 0 0 0
## 279 0 0 0 0 0 0 0 0
## 280 0 0 0 0 0 0 0 0
## 281 0 0 0 0 0 0 0 0
## 282 0 0 0 0 0 0 0 0
## 283 0 0 0 0 0 0 0 0
## 284 0 0 0 0 0 0 0 0
## upperr.X1 upperr.X2 takedownr.X1 takedownr.X2 hammerr.X1 hammerr.X2
## 232 0 0 0 0 0 0
## 233 0 0 0 0 0 0
## 234 0 0 0 0 0 0
## 235 0 0 0 0 0 0
## 236 0 0 0 0 0 0
## 237 0 0 0 0 0 0
## 238 0 0 0 0 0 0
## 239 0 0 0 0 0 0
## 240 0 0 0 0 0 0
## 241 0 0 0 0 0 0
## 242 0 0 1 0 0 0
## 243 0 0 0 0 0 0
## 244 0 0 0 0 0 0
## 245 0 0 0 0 0 0
## 246 0 0 0 0 0 0
## 247 0 0 0 0 0 0
## 248 0 0 0 0 0 0
## 249 0 0 0 0 0 0
## 250 0 0 0 0 0 0
## 251 0 0 0 1 0 0
## 252 0 0 0 0 0 0
## 253 0 0 0 0 0 0
## 254 0 0 0 0 0 0
## 255 0 0 0 0 0 0
## 256 0 0 0 0 0 0
## 257 0 0 0 0 0 0
## 258 0 0 0 0 0 0
## 259 0 0 0 0 0 0
## 260 0 0 0 0 0 0
## 261 0 0 0 0 0 0
## 262 0 0 0 0 0 0
## 263 0 0 0 0 0 0
## 264 0 0 0 0 0 0
## 265 0 0 0 0 0 0
## 266 0 0 0 0 0 0
## 267 0 0 0 0 0 0
## 268 0 0 0 0 0 0
## 269 0 0 0 0 0 0
## 270 0 1 0 0 0 0
## 271 0 0 0 0 0 0
## 272 0 0 0 0 0 0
## 273 0 0 0 0 0 0
## 274 0 0 0 0 0 0
## 275 0 0 0 0 0 0
## 276 0 0 0 0 0 0
## 277 0 0 0 0 0 0
## 278 0 0 0 0 0 0
## 279 0 0 0 0 0 1
## 280 0 0 0 0 0 1
## 281 0 0 0 0 0 1
## 282 0 0 0 0 0 0
## 283 0 0 0 0 0 0
## 284 0 0 0 0 0 0
## Cross2r.X1 Knee2r.X1 Elbow2r.X1 Hook2r.X1 Jab2r.X1 Kick2r.X1 Cross2r.X2
## 232 0 0 0 0 0 0 0
## 233 0 0 0 0 0 0 0
## 234 0 0 0 0 0 0 0
## 235 0 0 0 0 0 0 0
## 236 0 0 0 0 0 0 0
## 237 0 0 0 0 0 0 0
## 238 0 0 0 0 0 0 0
## 239 0 0 0 0 0 0 0
## 240 0 0 0 0 0 0 0
## 241 0 0 0 0 0 0 0
## 242 0 0 0 0 0 0 0
## 243 0 0 0 0 0 0 0
## 244 0 0 0 0 0 0 0
## 245 0 0 0 0 0 0 0
## 246 0 0 0 0 0 0 0
## 247 0 0 0 0 0 0 0
## 248 0 0 0 0 0 0 0
## 249 0 0 0 0 0 0 0
## 250 0 0 0 0 0 0 0
## 251 0 0 0 0 0 0 0
## 252 0 0 0 0 0 0 0
## 253 0 0 0 0 0 0 0
## 254 0 0 0 0 0 0 0
## 255 0 0 0 0 0 0 0
## 256 0 0 0 0 0 0 0
## 257 0 0 0 0 0 0 0
## 258 0 0 0 0 0 0 0
## 259 0 0 0 0 0 0 0
## 260 0 0 0 0 0 0 0
## 261 0 0 0 0 0 0 0
## 262 0 0 0 0 0 0 0
## 263 0 0 0 0 0 0 0
## 264 0 0 0 0 0 0 0
## 265 0 0 0 0 0 0 0
## 266 0 0 0 0 0 0 0
## 267 0 0 0 0 0 0 0
## 268 0 0 0 0 0 0 0
## 269 0 0 0 0 0 0 0
## 270 0 0 0 0 0 0 0
## 271 0 0 0 0 0 0 0
## 272 0 0 0 0 0 0 0
## 273 0 0 0 0 0 0 0
## 274 0 0 0 0 0 0 0
## 275 0 0 0 0 0 0 0
## 276 0 0 0 0 0 0 0
## 277 0 0 0 0 0 0 1
## 278 0 0 0 0 0 0 0
## 279 0 0 0 0 0 0 0
## 280 0 0 0 0 0 0 0
## 281 0 0 0 0 0 0 0
## 282 0 0 0 0 0 0 0
## 283 0 0 0 0 0 0 0
## 284 0 0 0 0 0 0 0
## Knee2r.X2 Elbow2r.X2 Hook2r.X2 Jab2r.X2 Kick2r.X2 upper2r.X1 upper2r.X2
## 232 0 0 0 0 0 0 0
## 233 0 0 0 0 0 0 0
## 234 0 0 0 0 0 0 0
## 235 0 0 0 0 0 0 0
## 236 0 0 0 0 0 0 0
## 237 0 0 0 0 0 0 0
## 238 0 0 0 0 0 0 0
## 239 0 0 0 0 0 0 0
## 240 0 0 0 0 0 0 0
## 241 0 0 0 0 0 0 0
## 242 0 0 0 0 0 0 0
## 243 0 0 0 0 0 0 0
## 244 0 0 0 0 0 0 0
## 245 0 0 0 0 0 0 0
## 246 0 0 0 0 0 0 0
## 247 0 0 0 0 0 0 0
## 248 0 0 0 0 0 0 0
## 249 0 0 0 0 0 0 0
## 250 0 0 0 0 0 0 0
## 251 0 0 0 0 0 0 0
## 252 0 0 0 0 0 0 0
## 253 0 0 0 0 0 0 0
## 254 0 0 0 0 0 0 0
## 255 0 0 0 0 0 0 0
## 256 0 0 0 0 0 0 0
## 257 0 0 0 0 0 0 0
## 258 0 0 0 0 0 0 0
## 259 0 0 0 0 0 0 0
## 260 0 0 0 0 0 0 0
## 261 0 0 0 0 0 0 0
## 262 0 0 0 0 0 0 0
## 263 0 0 0 0 0 0 0
## 264 0 0 0 0 0 0 0
## 265 0 0 0 0 0 0 0
## 266 0 0 0 0 0 0 0
## 267 0 0 0 0 0 0 0
## 268 0 0 0 0 0 0 0
## 269 0 0 0 0 0 0 0
## 270 0 0 0 0 0 0 0
## 271 0 0 0 0 0 0 0
## 272 0 0 0 0 0 0 0
## 273 0 0 0 0 0 0 0
## 274 0 0 0 0 0 0 0
## 275 0 0 0 0 0 0 0
## 276 0 0 0 0 0 0 0
## 277 0 0 0 0 0 0 0
## 278 0 0 0 0 0 0 0
## 279 0 0 0 0 0 0 0
## 280 0 0 0 0 0 0 0
## 281 0 0 0 0 0 0 0
## 282 0 0 0 0 0 0 0
## 283 0 0 0 0 0 0 0
## 284 0 0 0 0 0 0 0
## takedown2r.X1 takedown2r.X2 hammer2r.X1 hammer2r.X2 Cross3r.X1 Knee3r.X1
## 232 0 0 0 0 0 0
## 233 0 0 0 0 0 0
## 234 0 0 0 0 0 0
## 235 0 0 0 0 0 0
## 236 0 0 0 0 0 0
## 237 0 0 0 0 0 0
## 238 0 0 0 0 0 0
## 239 0 0 0 0 0 0
## 240 0 0 0 0 0 0
## 241 0 0 0 0 0 0
## 242 0 0 0 0 0 0
## 243 0 0 0 0 0 0
## 244 0 0 0 0 0 0
## 245 0 0 0 0 0 0
## 246 0 0 0 0 0 0
## 247 0 0 0 0 0 0
## 248 0 0 0 0 0 0
## 249 0 0 0 0 0 0
## 250 0 0 0 0 0 0
## 251 0 0 0 0 0 0
## 252 0 0 0 0 0 0
## 253 0 0 0 0 0 0
## 254 0 0 0 0 0 0
## 255 0 0 0 0 0 0
## 256 0 0 0 0 0 0
## 257 0 0 0 0 0 0
## 258 0 0 0 0 0 0
## 259 0 0 0 0 0 0
## 260 0 0 0 0 0 0
## 261 0 0 0 0 0 0
## 262 0 0 0 0 0 0
## 263 0 0 0 0 0 0
## 264 0 0 0 0 0 0
## 265 0 0 0 0 0 0
## 266 0 0 0 0 0 0
## 267 0 0 0 0 0 0
## 268 0 0 0 0 0 0
## 269 0 0 0 0 0 0
## 270 0 0 0 0 0 0
## 271 0 0 0 0 0 0
## 272 0 0 0 0 0 0
## 273 0 0 0 0 0 0
## 274 0 0 0 0 0 0
## 275 0 0 0 0 0 0
## 276 0 0 0 0 0 0
## 277 0 0 0 0 0 0
## 278 0 0 0 0 0 0
## 279 0 0 0 0 0 0
## 280 0 0 0 0 0 0
## 281 0 0 0 0 0 0
## 282 0 0 0 0 0 0
## 283 0 0 0 0 0 0
## 284 0 0 0 0 0 0
## Elbow3r.X1 Hook3r.X1 Jab3r.X1 Kick3r.X1 Cross3r.X2 Knee3r.X2 Elbow3r.X2
## 232 0 0 0 0 0 0 0
## 233 0 0 0 0 0 0 0
## 234 0 0 0 0 0 0 0
## 235 0 0 0 0 0 0 0
## 236 0 0 0 0 0 0 0
## 237 0 0 0 0 0 0 0
## 238 0 0 0 0 0 0 0
## 239 0 0 0 0 0 0 0
## 240 0 0 0 0 0 0 0
## 241 0 0 0 0 0 0 0
## 242 0 0 0 0 0 0 0
## 243 0 0 0 0 0 0 0
## 244 0 0 0 0 0 0 0
## 245 0 0 0 0 0 0 0
## 246 0 0 0 0 0 0 0
## 247 0 0 0 0 0 0 0
## 248 0 0 0 0 0 0 0
## 249 0 0 0 0 0 0 0
## 250 0 0 0 0 0 0 0
## 251 0 0 0 0 0 0 0
## 252 0 0 0 0 0 0 0
## 253 0 0 0 0 0 0 0
## 254 0 0 0 0 0 0 0
## 255 0 0 0 0 0 0 0
## 256 0 0 0 0 0 0 0
## 257 0 0 0 0 0 0 0
## 258 0 0 0 0 0 0 0
## 259 0 0 0 0 0 0 0
## 260 0 0 0 0 0 0 0
## 261 0 0 0 0 0 0 0
## 262 0 0 0 0 0 0 0
## 263 0 0 0 0 0 0 0
## 264 0 0 0 0 0 0 0
## 265 0 0 0 0 0 0 0
## 266 0 0 0 0 0 0 0
## 267 0 0 0 0 0 0 0
## 268 0 0 0 0 0 0 0
## 269 0 0 0 0 0 0 0
## 270 0 0 0 0 0 0 0
## 271 0 0 0 0 0 0 0
## 272 0 0 0 0 0 0 0
## 273 0 0 0 0 0 0 0
## 274 0 0 0 0 0 0 0
## 275 0 0 0 0 0 0 0
## 276 0 0 0 0 0 0 0
## 277 0 0 0 0 0 0 0
## 278 0 0 0 0 0 0 0
## 279 0 0 0 0 0 0 0
## 280 0 0 0 0 0 0 0
## 281 0 0 0 0 0 0 0
## 282 0 0 0 0 0 0 0
## 283 0 0 0 0 0 0 0
## 284 0 0 0 0 0 0 0
## Hook3r.X2 Jab3r.X2 Kick3r.X2 upper3r.X1 upper3r.X2 takedown3r.X1
## 232 0 0 0 0 0 0
## 233 0 0 0 0 0 0
## 234 0 0 0 0 0 0
## 235 0 0 0 0 0 0
## 236 0 0 0 0 0 0
## 237 0 0 0 0 0 0
## 238 0 0 0 0 0 0
## 239 0 0 0 0 0 0
## 240 0 0 0 0 0 0
## 241 0 0 0 0 0 0
## 242 0 0 0 0 0 0
## 243 0 0 0 0 0 0
## 244 0 0 0 0 0 0
## 245 0 0 0 0 0 0
## 246 0 0 0 0 0 0
## 247 0 0 0 0 0 0
## 248 0 0 0 0 0 0
## 249 0 0 0 0 0 0
## 250 0 0 0 0 0 0
## 251 0 0 0 0 0 0
## 252 0 0 0 0 0 0
## 253 0 0 0 0 0 0
## 254 0 0 0 0 0 0
## 255 0 0 0 0 0 0
## 256 0 0 0 0 0 0
## 257 0 0 0 0 0 0
## 258 0 0 0 0 0 0
## 259 0 0 0 0 0 0
## 260 0 0 0 0 0 0
## 261 0 0 0 0 0 0
## 262 0 0 0 0 0 0
## 263 0 0 0 0 0 0
## 264 0 0 0 0 0 0
## 265 0 0 0 0 0 0
## 266 0 0 0 0 0 0
## 267 0 0 0 0 0 0
## 268 0 0 0 0 0 0
## 269 0 0 0 0 0 0
## 270 0 0 0 0 0 0
## 271 0 0 0 0 0 0
## 272 0 0 0 0 0 0
## 273 0 0 0 0 0 0
## 274 0 0 0 0 0 0
## 275 0 0 0 0 0 0
## 276 0 0 0 0 0 0
## 277 0 0 0 0 0 0
## 278 0 0 0 0 0 0
## 279 0 0 0 0 0 0
## 280 0 0 0 0 0 0
## 281 0 0 0 0 0 0
## 282 0 0 0 0 0 0
## 283 0 0 0 0 0 0
## 284 0 0 0 0 0 0
## takedown3r.X2 hammer3r.X1 hammer3r.X2
## 232 0 0 0
## 233 0 0 0
## 234 0 0 0
## 235 0 0 0
## 236 0 0 0
## 237 0 0 0
## 238 0 0 0
## 239 0 0 0
## 240 0 0 0
## 241 0 0 0
## 242 0 0 0
## 243 0 0 0
## 244 0 0 0
## 245 0 0 0
## 246 0 0 0
## 247 0 0 0
## 248 0 0 0
## 249 0 0 0
## 250 0 0 0
## 251 0 0 0
## 252 0 0 0
## 253 0 0 0
## 254 0 0 0
## 255 0 0 0
## 256 0 0 0
## 257 0 0 0
## 258 0 0 0
## 259 0 0 0
## 260 0 0 0
## 261 0 0 0
## 262 0 0 0
## 263 0 0 0
## 264 0 0 0
## 265 0 0 0
## 266 0 0 0
## 267 0 0 0
## 268 0 0 0
## 269 0 0 0
## 270 0 0 0
## 271 0 0 0
## 272 0 0 0
## 273 0 0 0
## 274 0 0 0
## 275 0 0 0
## 276 0 0 0
## 277 0 0 0
## 278 0 0 0
## 279 0 0 0
## 280 0 0 0
## 281 0 0 0
## 282 0 0 0
## 283 0 0 0
## 284 0 0 0
Third opponent:
Table3 <- Added3[split2:(split3-1),]
Table3
## Round SecondsIntoRound lastAction SecondsLastRoundAction cmTotHitsR.X1
## 285 1 22 193 22 NA
## 286 1 34 22 12 NA
## 287 1 37 34 3 NA
## 288 1 40 37 3 NA
## 289 1 45 40 5 NA
## 290 1 59 45 14 NA
## 291 1 61 59 2 NA
## 292 1 62 61 1 NA
## 293 1 65 62 3 NA
## 294 1 68 65 3 NA
## 295 1 73 68 5 NA
## 296 1 77 73 4 NA
## 297 1 80 77 3 NA
## 298 1 81 80 1 NA
## 299 1 85 81 4 NA
## 300 1 86 85 1 NA
## 301 1 87 86 1 NA
## 302 1 88 87 1 NA
## 303 1 93 88 5 NA
## 304 1 97 93 4 NA
## 305 1 98 97 1 NA
## 306 1 99 98 1 NA
## 307 1 102 99 3 NA
## 308 1 107 102 5 NA
## 309 1 108 107 1 NA
## 310 1 109 108 1 NA
## 311 1 115 109 6 NA
## 312 1 119 115 4 NA
## 313 1 120 119 1 NA
## 314 1 121 120 1 NA
## 315 1 124 121 3 NA
## 316 1 128 124 4 NA
## 317 1 131 128 3 NA
## 318 1 132 131 1 NA
## 319 1 135 132 3 NA
## 320 1 138 135 3 NA
## 321 1 141 138 3 NA
## 322 1 153 141 12 NA
## 323 1 154 153 1 NA
## 324 1 157 154 3 NA
## 325 1 158 157 1 NA
## 326 1 159 158 1 NA
## 327 1 165 159 6 NA
## 328 1 173 165 8 NA
## 329 1 174 173 1 NA
## 330 1 179 174 5 NA
## 331 1 183 179 4 NA
## 332 1 185 183 2 NA
## 333 1 190 185 5 NA
## 334 1 193 190 3 NA
## 335 1 195 193 2 NA
## 336 1 198 195 3 NA
## 337 1 199 198 1 NA
## 338 1 203 199 4 NA
## 339 1 204 203 1 NA
## 340 1 209 204 5 NA
## 341 1 216 209 7 NA
## 342 1 226 216 10 NA
## 343 1 228 226 2 NA
## 344 1 247 228 19 NA
## 345 1 249 247 2 NA
## 346 1 250 249 1 NA
## 347 1 255 250 5 NA
## 348 1 259 255 4 NA
## 349 1 260 259 1 NA
## 350 1 267 260 7 NA
## 351 1 271 267 4 NA
## 352 1 272 271 1 NA
## 353 1 273 272 1 NA
## 354 1 276 273 3 NA
## 355 1 282 276 6 NA
## 356 1 283 282 1 NA
## 357 1 285 283 2 NA
## 358 1 289 285 4 NA
## 359 1 290 289 1 NA
## 360 1 291 290 1 NA
## 361 1 292 291 1 NA
## 362 1 296 292 4 NA
## 363 1 299 296 3 NA
## cmTotHitsL.X1 cmTotHitsM.X1 TotLandsX1 TotMissedX1 TotReceivedX1
## 285 NA NA 0 1 0
## 286 NA NA 0 1 0
## 287 NA NA 0 1 0
## 288 NA NA 0 1 0
## 289 NA NA 0 1 0
## 290 NA NA 0 1 0
## 291 NA NA 0 1 0
## 292 NA NA 0 0 0
## 293 NA NA 0 0 0
## 294 NA NA 0 1 0
## 295 NA NA 0 1 0
## 296 NA NA 1 1 0
## 297 NA NA 0 1 0
## 298 NA NA 0 1 0
## 299 NA NA 0 1 0
## 300 NA NA 0 0 0
## 301 NA NA 0 0 0
## 302 NA NA 0 1 0
## 303 NA NA 0 1 0
## 304 NA NA 0 1 0
## 305 NA NA 0 2 0
## 306 NA NA 0 0 0
## 307 NA NA 0 1 0
## 308 NA NA 2 2 0
## 309 NA NA 0 1 0
## 310 NA NA 0 0 0
## 311 NA NA 0 1 0
## 312 NA NA 0 1 0
## 313 NA NA 0 1 0
## 314 NA NA 0 0 0
## 315 NA NA 0 1 0
## 316 NA NA 0 1 0
## 317 NA NA 0 1 0
## 318 NA NA 0 1 0
## 319 NA NA 0 0 0
## 320 NA NA 0 1 0
## 321 NA NA 0 0 0
## 322 NA NA 1 0 0
## 323 NA NA 0 1 0
## 324 NA NA 2 0 0
## 325 NA NA 0 0 1
## 326 NA NA 0 0 0
## 327 NA NA 0 1 0
## 328 NA NA 1 0 0
## 329 NA NA 0 2 0
## 330 NA NA 0 0 1
## 331 NA NA 0 1 0
## 332 NA NA 0 1 0
## 333 NA NA 0 2 0
## 334 NA NA 0 1 0
## 335 NA NA 0 1 0
## 336 NA NA 0 1 0
## 337 NA NA 0 0 0
## 338 NA NA 0 0 0
## 339 NA NA 0 1 0
## 340 NA NA 0 2 0
## 341 NA NA 0 1 0
## 342 NA NA 0 0 0
## 343 NA NA 0 2 0
## 344 NA NA 0 1 0
## 345 NA NA 0 0 0
## 346 NA NA 0 1 0
## 347 NA NA 0 2 0
## 348 NA NA 0 1 0
## 349 NA NA 0 0 0
## 350 NA NA 0 0 1
## 351 NA NA 0 0 0
## 352 NA NA 0 0 0
## 353 NA NA 1 0 0
## 354 NA NA 0 1 0
## 355 NA NA 0 0 0
## 356 NA NA 0 0 0
## 357 NA NA 0 1 0
## 358 NA NA 0 1 0
## 359 NA NA 0 0 0
## 360 NA NA 0 0 0
## 361 NA NA 0 1 0
## 362 NA NA 0 1 0
## 363 NA NA 0 1 0
## cmTotHitsR.X2 cmTotHitsL.X2 cmTotHitsM.X2 TotLandsX2 TotMissedX2
## 285 NA NA NA 0 0
## 286 NA NA NA 0 0
## 287 NA NA NA 0 0
## 288 NA NA NA 0 0
## 289 NA NA NA 0 0
## 290 NA NA NA 0 0
## 291 NA NA NA 0 0
## 292 NA NA NA 0 0
## 293 NA NA NA 0 0
## 294 NA NA NA 0 1
## 295 NA NA NA 0 0
## 296 NA NA NA 0 0
## 297 NA NA NA 0 0
## 298 NA NA NA 0 0
## 299 NA NA NA 0 0
## 300 NA NA NA 0 2
## 301 NA NA NA 0 1
## 302 NA NA NA 0 0
## 303 NA NA NA 0 0
## 304 NA NA NA 0 0
## 305 NA NA NA 0 2
## 306 NA NA NA 0 0
## 307 NA NA NA 0 0
## 308 NA NA NA 0 0
## 309 NA NA NA 0 1
## 310 NA NA NA 0 0
## 311 NA NA NA 0 1
## 312 NA NA NA 0 1
## 313 NA NA NA 0 0
## 314 NA NA NA 0 1
## 315 NA NA NA 0 0
## 316 NA NA NA 0 0
## 317 NA NA NA 0 0
## 318 NA NA NA 0 0
## 319 NA NA NA 0 1
## 320 NA NA NA 0 0
## 321 NA NA NA 0 2
## 322 NA NA NA 0 0
## 323 NA NA NA 0 0
## 324 NA NA NA 0 0
## 325 NA NA NA 1 0
## 326 NA NA NA 0 1
## 327 NA NA NA 0 0
## 328 NA NA NA 0 0
## 329 NA NA NA 0 0
## 330 NA NA NA 1 0
## 331 NA NA NA 0 0
## 332 NA NA NA 0 0
## 333 NA NA NA 0 0
## 334 NA NA NA 0 0
## 335 NA NA NA 0 0
## 336 NA NA NA 0 0
## 337 NA NA NA 0 1
## 338 NA NA NA 0 2
## 339 NA NA NA 0 0
## 340 NA NA NA 0 0
## 341 NA NA NA 0 0
## 342 NA NA NA 0 0
## 343 NA NA NA 0 1
## 344 NA NA NA 0 0
## 345 NA NA NA 0 2
## 346 NA NA NA 0 0
## 347 NA NA NA 0 1
## 348 NA NA NA 0 0
## 349 NA NA NA 0 0
## 350 NA NA NA 1 0
## 351 NA NA NA 0 0
## 352 NA NA NA 0 0
## 353 NA NA NA 0 0
## 354 NA NA NA 0 0
## 355 NA NA NA 0 0
## 356 NA NA NA 0 2
## 357 NA NA NA 0 0
## 358 NA NA NA 0 0
## 359 NA NA NA 0 2
## 360 NA NA NA 0 1
## 361 NA NA NA 0 0
## 362 NA NA NA 0 0
## 363 NA NA NA 0 0
## TotReceivedX2 Time
## 285 0 4:37
## 286 0 4:25
## 287 0 4:22
## 288 0 4:19
## 289 0 4:14
## 290 0 4:00
## 291 0 3:58
## 292 0 3:57
## 293 0 3:54
## 294 0 3:51
## 295 0 3:46
## 296 1 3:42
## 297 0 3:39
## 298 0 3:38
## 299 0 3:34
## 300 0 3:33
## 301 0 3:32
## 302 0 3:31
## 303 0 3:26
## 304 0 3:22
## 305 0 3:21
## 306 0 3:20
## 307 0 3:17
## 308 2 3:12
## 309 0 3:11
## 310 0 3:10
## 311 0 3:04
## 312 0 3:00
## 313 0 2:59
## 314 0 2:58
## 315 0 2:55
## 316 0 2:51
## 317 0 2:48
## 318 0 2:47
## 319 0 2:44
## 320 0 2:41
## 321 0 2:38
## 322 1 2:26
## 323 0 2:25
## 324 2 2:22
## 325 0 2:21
## 326 0 2:20
## 327 0 2:14
## 328 1 2:06
## 329 0 2:05
## 330 0 2:00
## 331 0 1:56
## 332 0 1:54
## 333 0 1:49
## 334 0 1:46
## 335 0 1:44
## 336 0 1:41
## 337 0 1:40
## 338 0 1:36
## 339 0 1:35
## 340 0 1:30
## 341 0 1:23
## 342 0 1:13
## 343 0 1:11
## 344 0 0:52
## 345 0 0:50
## 346 0 0:49
## 347 0 0:44
## 348 0 0:40
## 349 0 0:39
## 350 0 0:32
## 351 0 0:28
## 352 0 0:27
## 353 1 0:26
## 354 0 0:23
## 355 0 0:17
## 356 0 0:16
## 357 0 0:14
## 358 0 0:10
## 359 0 0:09
## 360 0 0:08
## 361 0 0:07
## 362 0 0:03
## 363 0 0:00
## FighterActionReactions.X1
## 285 misses R mt kick to low L lead leg
## 286 misses R cross
## 287 misses R mt kick to low L lead leg
## 288 misses R mt kick to low L lead leg
## 289 misses R mt kick to low L lead leg
## 290 misses L jab to face
## 291 misses R mt kick to low L lead leg
## 292 <NA>
## 293 feigns L mt kick to inside L lead leg
## 294 missses R mt kick to low L lead leg
## 295 misses R mt kick to low L lead leg
## 296 lands L jab to body, misses R cross to face
## 297 misses L jab to body
## 298 misses R mt kick to low L lead leg
## 299 misses R mt kick to low L lead leg
## 300 <NA>
## 301 <NA>
## 302 misses R mt kick to low L lead leg
## 303 misses L jab to body
## 304 misses R mt kick to low L lead leg
## 305 misses L jab to face, misses R cross to face
## 306 pushes off with R forearm
## 307 misses L jab to body
## 308 lands R mt kick to low L back of knee, misses L jab, misses R cross
## 309 blocks L jab by raising L Shoulder, misses R cross to face
## 310 pushes Face with R hand and away
## 311 misses L jab to body
## 312 misses L jab to body, leans back from R cross to face
## 313 misses R cross
## 314 <NA>
## 315 misses L jab to face
## 316 misses L jab to body
## 317 misses R cross to face
## 318 misses L jab to face
## 319 ducks
## 320 misses R mt kick to low L lead leg
## 321 ducks and clinches waist pushes to cage
## 322 lands R upper to face
## 323 misses R cross to face
## 324 lands R mt kick to low L back of knee
## 325 <NA>
## 326 blocks L hook with R overhead arm
## 327 misses R mt kick to low L lead leg
## 328 lands R push kick to body
## 329 misses L jab, misses R cross to face
## 330 <NA>
## 331 misses R push kick to body
## 332 misses L jab to face
## 333 misses R cross to face, misses R cross to face
## 334 misses R mt kick to low L lead leg
## 335 misses R cross to face
## 336 misses R mt kick to body
## 337 <NA>
## 338 ducks
## 339 misses R upper to face
## 340 misses L jab, misses R cross to face
## 341 misses L jab to body
## 342 feigns L mt kick to head
## 343 misses L jab, misses R cross to face
## 344 misses R mt kick to low L lead leg
## 345 <NA>
## 346 misses R cross to face
## 347 misses L jab, misses R cross to face
## 348 misses L mt kick to inside L lead leg
## 349 <NA>
## 350 <NA>
## 351 <NA>
## 352 <NA>
## 353 lands L knee to body with neck clinch
## 354 misses L jab to face
## 355 <NA>
## 356 <NA>
## 357 misses R mt kick to low L lead leg
## 358 misses R cross to face
## 359 <NA>
## 360 <NA>
## 361 misses R cross
## 362 misses L jab
## 363 misses R push kick to body
## FightersActionsReactions.X2 Notes
## 285 falls avoiding the kick Pennington
## 286 <NA> Pennington
## 287 blocks with L hand kick Pennington
## 288 lifts L leg to avoid kick Pennington
## 289 jumps back to avoid kick Pennington
## 290 leans back to avoid jab Pennington
## 291 jumps back to avoid kick Pennington
## 292 stumbles, drops to ground off balance Pennington
## 293 <NA> Pennington
## 294 misses R cross Pennington
## 295 jumps back to avoid kick Pennington
## 296 <NA> Pennington
## 297 <NA> Pennington
## 298 blocks kick with L leg knee raised Pennington
## 299 jumps back to avoid kick Pennington
## 300 misses L jab to face, misses R cross Pennington
## 301 misses L hook to face Pennington
## 302 <NA> Pennington
## 303 <NA> Pennington
## 304 lifts L leg to avoid kick Pennington
## 305 misses L hook to face, misses R cross to face Pennington
## 306 getting push back on heels Pennington
## 307 blocks jab with raised L leg Pennington
## 308 blocks L jab, ducks back from R cross Pennington
## 309 misses L jab to face , ducks R cross to face Pennington
## 310 attempts body clinch Pennington
## 311 misses L kick to body Pennington
## 312 misses R cross to face Pennington
## 313 ducks R cross Pennington
## 314 misses R cross to face Pennington
## 315 blocks w L arm Pennington
## 316 <NA> Pennington
## 317 blocks with L shoulder Pennington
## 318 blocks with R hand the jab Pennington
## 319 misses R hook to face Pennington
## 320 jumps back to avoid kick Pennington
## 321 misses L jab, misses R cross to face Pennington
## 322 <NA> Pennington
## 323 blocks R cross with L arm against cage Pennington
## 324 <NA> Pennington
## 325 lands R cross to face Pennington
## 326 misses L hook to face Pennington
## 327 jumps back to avoid kick Pennington
## 328 <NA> Pennington
## 329 <NA> Pennington
## 330 lands L knee in clinch control Pennington
## 331 jumps back to avoid kick Pennington
## 332 <NA> Pennington
## 333 ducks R cross Pennington
## 334 <NA> Pennington
## 335 ducks R cross Pennington
## 336 <NA> Pennington
## 337 misses L push kick against cage Pennington
## 338 misses L jab, misses R cross Pennington
## 339 jumps back to avoid upper Pennington
## 340 blocks and leans to side pushing R cross with Left hand Pennington
## 341 <NA> Pennington
## 342 steps back drops L arm as if to block or push leg down Pennington
## 343 misses R cross to face Pennington
## 344 <NA> Pennington
## 345 misses L jab, misses running R cross to face Pennington
## 346 <NA> Pennington
## 347 misses L hook to face Pennington
## 348 <NA> Pennington
## 349 feigns L mt kick to inside L leg, raises arms Pennington
## 350 lands R push kick against cage Pennington
## 351 feigns L push kick against cage Pennington
## 352 attempts one legged takedown from cage Pennington
## 353 <NA> Pennington
## 354 <NA> Pennington
## 355 lifts L leg for mt kick projected Pennington
## 356 misses L jab, misses R cross to face Pennington
## 357 jumps back Pennington
## 358 leans back to avoid R cross to face Pennington
## 359 misses R cross, misses L hook to face Pennington
## 360 misses R cross Pennington
## 361 <NA> Pennington
## 362 jumps back Pennington
## 363 <NA> Pennington
## Crossl.X1 Kneel.X1 Elbowl.X1 Hookl.X1 Jabl.X1 Kickl.X1 Crossl.X2 Kneel.X2
## 285 0 0 0 0 0 0 0 0
## 286 0 0 0 0 0 0 0 0
## 287 0 0 0 0 0 0 0 0
## 288 0 0 0 0 0 0 0 0
## 289 0 0 0 0 0 0 0 0
## 290 0 0 0 0 0 0 0 0
## 291 0 0 0 0 0 0 0 0
## 292 0 0 0 0 0 0 0 0
## 293 0 0 0 0 0 0 0 0
## 294 0 0 0 0 0 0 0 0
## 295 0 0 0 0 0 0 0 0
## 296 0 0 0 0 1 0 0 0
## 297 0 0 0 0 0 0 0 0
## 298 0 0 0 0 0 0 0 0
## 299 0 0 0 0 0 0 0 0
## 300 0 0 0 0 0 0 0 0
## 301 0 0 0 0 0 0 0 0
## 302 0 0 0 0 0 0 0 0
## 303 0 0 0 0 0 0 0 0
## 304 0 0 0 0 0 0 0 0
## 305 0 0 0 0 0 0 0 0
## 306 0 0 0 0 0 0 0 0
## 307 0 0 0 0 0 0 0 0
## 308 0 1 0 0 0 1 0 0
## 309 0 0 0 0 0 0 0 0
## 310 0 0 0 0 0 0 0 0
## 311 0 0 0 0 0 0 0 0
## 312 0 0 0 0 0 0 0 0
## 313 0 0 0 0 0 0 0 0
## 314 0 0 0 0 0 0 0 0
## 315 0 0 0 0 0 0 0 0
## 316 0 0 0 0 0 0 0 0
## 317 0 0 0 0 0 0 0 0
## 318 0 0 0 0 0 0 0 0
## 319 0 0 0 0 0 0 0 0
## 320 0 0 0 0 0 0 0 0
## 321 0 0 0 0 0 0 0 0
## 322 0 0 0 0 0 0 0 0
## 323 0 0 0 0 0 0 0 0
## 324 0 1 0 0 0 1 0 0
## 325 0 0 0 0 0 0 1 0
## 326 0 0 0 0 0 0 0 0
## 327 0 0 0 0 0 0 0 0
## 328 0 0 0 0 0 1 0 0
## 329 0 0 0 0 0 0 0 0
## 330 0 0 0 0 0 0 0 1
## 331 0 0 0 0 0 0 0 0
## 332 0 0 0 0 0 0 0 0
## 333 0 0 0 0 0 0 0 0
## 334 0 0 0 0 0 0 0 0
## 335 0 0 0 0 0 0 0 0
## 336 0 0 0 0 0 0 0 0
## 337 0 0 0 0 0 0 0 0
## 338 0 0 0 0 0 0 0 0
## 339 0 0 0 0 0 0 0 0
## 340 0 0 0 0 0 0 0 0
## 341 0 0 0 0 0 0 0 0
## 342 0 0 0 0 0 0 0 0
## 343 0 0 0 0 0 0 0 0
## 344 0 0 0 0 0 0 0 0
## 345 0 0 0 0 0 0 0 0
## 346 0 0 0 0 0 0 0 0
## 347 0 0 0 0 0 0 0 0
## 348 0 0 0 0 0 0 0 0
## 349 0 0 0 0 0 0 0 0
## 350 0 0 0 0 0 0 0 0
## 351 0 0 0 0 0 0 0 0
## 352 0 0 0 0 0 0 0 0
## 353 0 1 0 0 0 0 0 0
## 354 0 0 0 0 0 0 0 0
## 355 0 0 0 0 0 0 0 0
## 356 0 0 0 0 0 0 0 0
## 357 0 0 0 0 0 0 0 0
## 358 0 0 0 0 0 0 0 0
## 359 0 0 0 0 0 0 0 0
## 360 0 0 0 0 0 0 0 0
## 361 0 0 0 0 0 0 0 0
## 362 0 0 0 0 0 0 0 0
## 363 0 0 0 0 0 0 0 0
## Elbowl.X2 Hookl.X2 Jabl.X2 Kickl.X2 upperl.X1 upperl.X2 takedownl.X1
## 285 0 0 0 0 0 0 0
## 286 0 0 0 0 0 0 0
## 287 0 0 0 0 0 0 0
## 288 0 0 0 0 0 0 0
## 289 0 0 0 0 0 0 0
## 290 0 0 0 0 0 0 0
## 291 0 0 0 0 0 0 0
## 292 0 0 0 0 0 0 0
## 293 0 0 0 0 0 0 0
## 294 0 0 0 0 0 0 0
## 295 0 0 0 0 0 0 0
## 296 0 0 0 0 0 0 0
## 297 0 0 0 0 0 0 0
## 298 0 0 0 0 0 0 0
## 299 0 0 0 0 0 0 0
## 300 0 0 0 0 0 0 0
## 301 0 0 0 0 0 0 0
## 302 0 0 0 0 0 0 0
## 303 0 0 0 0 0 0 0
## 304 0 0 0 0 0 0 0
## 305 0 0 0 0 0 0 0
## 306 0 0 0 0 0 0 0
## 307 0 0 0 0 0 0 0
## 308 0 0 0 0 0 0 0
## 309 0 0 0 0 0 0 0
## 310 0 0 0 0 0 0 0
## 311 0 0 0 0 0 0 0
## 312 0 0 0 0 0 0 0
## 313 0 0 0 0 0 0 0
## 314 0 0 0 0 0 0 0
## 315 0 0 0 0 0 0 0
## 316 0 0 0 0 0 0 0
## 317 0 0 0 0 0 0 0
## 318 0 0 0 0 0 0 0
## 319 0 0 0 0 0 0 0
## 320 0 0 0 0 0 0 0
## 321 0 0 0 0 0 0 0
## 322 0 0 0 0 1 0 0
## 323 0 0 0 0 0 0 0
## 324 0 0 0 0 0 0 0
## 325 0 0 0 0 0 0 0
## 326 0 0 0 0 0 0 0
## 327 0 0 0 0 0 0 0
## 328 0 0 0 0 0 0 0
## 329 0 0 0 0 0 0 0
## 330 0 0 0 0 0 0 0
## 331 0 0 0 0 0 0 0
## 332 0 0 0 0 0 0 0
## 333 0 0 0 0 0 0 0
## 334 0 0 0 0 0 0 0
## 335 0 0 0 0 0 0 0
## 336 0 0 0 0 0 0 0
## 337 0 0 0 0 0 0 0
## 338 0 0 0 0 0 0 0
## 339 0 0 0 0 0 0 0
## 340 0 0 0 0 0 0 0
## 341 0 0 0 0 0 0 0
## 342 0 0 0 0 0 0 0
## 343 0 0 0 0 0 0 0
## 344 0 0 0 0 0 0 0
## 345 0 0 0 0 0 0 0
## 346 0 0 0 0 0 0 0
## 347 0 0 0 0 0 0 0
## 348 0 0 0 0 0 0 0
## 349 0 0 0 0 0 0 0
## 350 0 0 0 1 0 0 0
## 351 0 0 0 0 0 0 0
## 352 0 0 0 0 0 0 0
## 353 0 0 0 0 0 0 0
## 354 0 0 0 0 0 0 0
## 355 0 0 0 0 0 0 0
## 356 0 0 0 0 0 0 0
## 357 0 0 0 0 0 0 0
## 358 0 0 0 0 0 0 0
## 359 0 0 0 0 0 0 0
## 360 0 0 0 0 0 0 0
## 361 0 0 0 0 0 0 0
## 362 0 0 0 0 0 0 0
## 363 0 0 0 0 0 0 0
## takedownl.X2 hammerl.X1 hammerl.X2 Cross2l.X1 Knee2l.X1 Elbow2l.X1
## 285 0 0 0 0 0 0
## 286 0 0 0 0 0 0
## 287 0 0 0 0 0 0
## 288 0 0 0 0 0 0
## 289 0 0 0 0 0 0
## 290 0 0 0 0 0 0
## 291 0 0 0 0 0 0
## 292 0 0 0 0 0 0
## 293 0 0 0 0 0 0
## 294 0 0 0 0 0 0
## 295 0 0 0 0 0 0
## 296 0 0 0 0 0 0
## 297 0 0 0 0 0 0
## 298 0 0 0 0 0 0
## 299 0 0 0 0 0 0
## 300 0 0 0 0 0 0
## 301 0 0 0 0 0 0
## 302 0 0 0 0 0 0
## 303 0 0 0 0 0 0
## 304 0 0 0 0 0 0
## 305 0 0 0 0 0 0
## 306 0 0 0 0 0 0
## 307 0 0 0 0 0 0
## 308 0 0 0 0 0 0
## 309 0 0 0 0 0 0
## 310 0 0 0 0 0 0
## 311 0 0 0 0 0 0
## 312 0 0 0 0 0 0
## 313 0 0 0 0 0 0
## 314 0 0 0 0 0 0
## 315 0 0 0 0 0 0
## 316 0 0 0 0 0 0
## 317 0 0 0 0 0 0
## 318 0 0 0 0 0 0
## 319 0 0 0 0 0 0
## 320 0 0 0 0 0 0
## 321 0 0 0 0 0 0
## 322 0 0 0 0 0 0
## 323 0 0 0 0 0 0
## 324 0 0 0 0 0 0
## 325 0 0 0 0 0 0
## 326 0 0 0 0 0 0
## 327 0 0 0 0 0 0
## 328 0 0 0 0 0 0
## 329 0 0 0 0 0 0
## 330 0 0 0 0 0 0
## 331 0 0 0 0 0 0
## 332 0 0 0 0 0 0
## 333 0 0 0 0 0 0
## 334 0 0 0 0 0 0
## 335 0 0 0 0 0 0
## 336 0 0 0 0 0 0
## 337 0 0 0 0 0 0
## 338 0 0 0 0 0 0
## 339 0 0 0 0 0 0
## 340 0 0 0 0 0 0
## 341 0 0 0 0 0 0
## 342 0 0 0 0 0 0
## 343 0 0 0 0 0 0
## 344 0 0 0 0 0 0
## 345 0 0 0 0 0 0
## 346 0 0 0 0 0 0
## 347 0 0 0 0 0 0
## 348 0 0 0 0 0 0
## 349 0 0 0 0 0 0
## 350 0 0 0 0 0 0
## 351 0 0 0 0 0 0
## 352 0 0 0 0 0 0
## 353 0 0 0 0 0 0
## 354 0 0 0 0 0 0
## 355 0 0 0 0 0 0
## 356 0 0 0 0 0 0
## 357 0 0 0 0 0 0
## 358 0 0 0 0 0 0
## 359 0 0 0 0 0 0
## 360 0 0 0 0 0 0
## 361 0 0 0 0 0 0
## 362 0 0 0 0 0 0
## 363 0 0 0 0 0 0
## Hook2l.X1 Jab2l.X1 Kick2l.X1 Cross2l.X2 Knee2l.X2 Elbow2l.X2 Hook2l.X2
## 285 0 0 0 0 0 0 0
## 286 0 0 0 0 0 0 0
## 287 0 0 0 0 0 0 0
## 288 0 0 0 0 0 0 0
## 289 0 0 0 0 0 0 0
## 290 0 0 0 0 0 0 0
## 291 0 0 0 0 0 0 0
## 292 0 0 0 0 0 0 0
## 293 0 0 0 0 0 0 0
## 294 0 0 0 0 0 0 0
## 295 0 0 0 0 0 0 0
## 296 0 0 0 0 0 0 0
## 297 0 0 0 0 0 0 0
## 298 0 0 0 0 0 0 0
## 299 0 0 0 0 0 0 0
## 300 0 0 0 0 0 0 0
## 301 0 0 0 0 0 0 0
## 302 0 0 0 0 0 0 0
## 303 0 0 0 0 0 0 0
## 304 0 0 0 0 0 0 0
## 305 0 0 0 0 0 0 0
## 306 0 0 0 0 0 0 0
## 307 0 0 0 0 0 0 0
## 308 0 0 0 0 0 0 0
## 309 0 0 0 0 0 0 0
## 310 0 0 0 0 0 0 0
## 311 0 0 0 0 0 0 0
## 312 0 0 0 0 0 0 0
## 313 0 0 0 0 0 0 0
## 314 0 0 0 0 0 0 0
## 315 0 0 0 0 0 0 0
## 316 0 0 0 0 0 0 0
## 317 0 0 0 0 0 0 0
## 318 0 0 0 0 0 0 0
## 319 0 0 0 0 0 0 0
## 320 0 0 0 0 0 0 0
## 321 0 0 0 0 0 0 0
## 322 0 0 0 0 0 0 0
## 323 0 0 0 0 0 0 0
## 324 0 0 0 0 0 0 0
## 325 0 0 0 0 0 0 0
## 326 0 0 0 0 0 0 0
## 327 0 0 0 0 0 0 0
## 328 0 0 0 0 0 0 0
## 329 0 0 0 0 0 0 0
## 330 0 0 0 0 0 0 0
## 331 0 0 0 0 0 0 0
## 332 0 0 0 0 0 0 0
## 333 0 0 0 0 0 0 0
## 334 0 0 0 0 0 0 0
## 335 0 0 0 0 0 0 0
## 336 0 0 0 0 0 0 0
## 337 0 0 0 0 0 0 0
## 338 0 0 0 0 0 0 0
## 339 0 0 0 0 0 0 0
## 340 0 0 0 0 0 0 0
## 341 0 0 0 0 0 0 0
## 342 0 0 0 0 0 0 0
## 343 0 0 0 0 0 0 0
## 344 0 0 0 0 0 0 0
## 345 0 0 0 0 0 0 0
## 346 0 0 0 0 0 0 0
## 347 0 0 0 0 0 0 0
## 348 0 0 0 0 0 0 0
## 349 0 0 0 0 0 0 0
## 350 0 0 0 0 0 0 0
## 351 0 0 0 0 0 0 0
## 352 0 0 0 0 0 0 0
## 353 0 0 0 0 0 0 0
## 354 0 0 0 0 0 0 0
## 355 0 0 0 0 0 0 0
## 356 0 0 0 0 0 0 0
## 357 0 0 0 0 0 0 0
## 358 0 0 0 0 0 0 0
## 359 0 0 0 0 0 0 0
## 360 0 0 0 0 0 0 0
## 361 0 0 0 0 0 0 0
## 362 0 0 0 0 0 0 0
## 363 0 0 0 0 0 0 0
## Jab2l.X2 Kick2l.X2 upper2l.X1 upper2l.X2 takedown2l.X1 takedown2l.X2
## 285 0 0 0 0 0 0
## 286 0 0 0 0 0 0
## 287 0 0 0 0 0 0
## 288 0 0 0 0 0 0
## 289 0 0 0 0 0 0
## 290 0 0 0 0 0 0
## 291 0 0 0 0 0 0
## 292 0 0 0 0 0 0
## 293 0 0 0 0 0 0
## 294 0 0 0 0 0 0
## 295 0 0 0 0 0 0
## 296 0 0 0 0 0 0
## 297 0 0 0 0 0 0
## 298 0 0 0 0 0 0
## 299 0 0 0 0 0 0
## 300 0 0 0 0 0 0
## 301 0 0 0 0 0 0
## 302 0 0 0 0 0 0
## 303 0 0 0 0 0 0
## 304 0 0 0 0 0 0
## 305 0 0 0 0 0 0
## 306 0 0 0 0 0 0
## 307 0 0 0 0 0 0
## 308 0 0 0 0 0 0
## 309 0 0 0 0 0 0
## 310 0 0 0 0 0 0
## 311 0 0 0 0 0 0
## 312 0 0 0 0 0 0
## 313 0 0 0 0 0 0
## 314 0 0 0 0 0 0
## 315 0 0 0 0 0 0
## 316 0 0 0 0 0 0
## 317 0 0 0 0 0 0
## 318 0 0 0 0 0 0
## 319 0 0 0 0 0 0
## 320 0 0 0 0 0 0
## 321 0 0 0 0 0 0
## 322 0 0 0 0 0 0
## 323 0 0 0 0 0 0
## 324 0 0 0 0 0 0
## 325 0 0 0 0 0 0
## 326 0 0 0 0 0 0
## 327 0 0 0 0 0 0
## 328 0 0 0 0 0 0
## 329 0 0 0 0 0 0
## 330 0 0 0 0 0 0
## 331 0 0 0 0 0 0
## 332 0 0 0 0 0 0
## 333 0 0 0 0 0 0
## 334 0 0 0 0 0 0
## 335 0 0 0 0 0 0
## 336 0 0 0 0 0 0
## 337 0 0 0 0 0 0
## 338 0 0 0 0 0 0
## 339 0 0 0 0 0 0
## 340 0 0 0 0 0 0
## 341 0 0 0 0 0 0
## 342 0 0 0 0 0 0
## 343 0 0 0 0 0 0
## 344 0 0 0 0 0 0
## 345 0 0 0 0 0 0
## 346 0 0 0 0 0 0
## 347 0 0 0 0 0 0
## 348 0 0 0 0 0 0
## 349 0 0 0 0 0 0
## 350 0 0 0 0 0 0
## 351 0 0 0 0 0 0
## 352 0 0 0 0 0 0
## 353 0 0 0 0 0 0
## 354 0 0 0 0 0 0
## 355 0 0 0 0 0 0
## 356 0 0 0 0 0 0
## 357 0 0 0 0 0 0
## 358 0 0 0 0 0 0
## 359 0 0 0 0 0 0
## 360 0 0 0 0 0 0
## 361 0 0 0 0 0 0
## 362 0 0 0 0 0 0
## 363 0 0 0 0 0 0
## hammer2l.X1 hammer2l.X2 Cross3l.X1 Knee3l.X1 Elbow3l.X1 Hook3l.X1 Jab3l.X1
## 285 0 0 0 0 0 0 0
## 286 0 0 0 0 0 0 0
## 287 0 0 0 0 0 0 0
## 288 0 0 0 0 0 0 0
## 289 0 0 0 0 0 0 0
## 290 0 0 0 0 0 0 0
## 291 0 0 0 0 0 0 0
## 292 0 0 0 0 0 0 0
## 293 0 0 0 0 0 0 0
## 294 0 0 0 0 0 0 0
## 295 0 0 0 0 0 0 0
## 296 0 0 0 0 0 0 0
## 297 0 0 0 0 0 0 0
## 298 0 0 0 0 0 0 0
## 299 0 0 0 0 0 0 0
## 300 0 0 0 0 0 0 0
## 301 0 0 0 0 0 0 0
## 302 0 0 0 0 0 0 0
## 303 0 0 0 0 0 0 0
## 304 0 0 0 0 0 0 0
## 305 0 0 0 0 0 0 0
## 306 0 0 0 0 0 0 0
## 307 0 0 0 0 0 0 0
## 308 0 0 0 0 0 0 0
## 309 0 0 0 0 0 0 0
## 310 0 0 0 0 0 0 0
## 311 0 0 0 0 0 0 0
## 312 0 0 0 0 0 0 0
## 313 0 0 0 0 0 0 0
## 314 0 0 0 0 0 0 0
## 315 0 0 0 0 0 0 0
## 316 0 0 0 0 0 0 0
## 317 0 0 0 0 0 0 0
## 318 0 0 0 0 0 0 0
## 319 0 0 0 0 0 0 0
## 320 0 0 0 0 0 0 0
## 321 0 0 0 0 0 0 0
## 322 0 0 0 0 0 0 0
## 323 0 0 0 0 0 0 0
## 324 0 0 0 0 0 0 0
## 325 0 0 0 0 0 0 0
## 326 0 0 0 0 0 0 0
## 327 0 0 0 0 0 0 0
## 328 0 0 0 0 0 0 0
## 329 0 0 0 0 0 0 0
## 330 0 0 0 0 0 0 0
## 331 0 0 0 0 0 0 0
## 332 0 0 0 0 0 0 0
## 333 0 0 0 0 0 0 0
## 334 0 0 0 0 0 0 0
## 335 0 0 0 0 0 0 0
## 336 0 0 0 0 0 0 0
## 337 0 0 0 0 0 0 0
## 338 0 0 0 0 0 0 0
## 339 0 0 0 0 0 0 0
## 340 0 0 0 0 0 0 0
## 341 0 0 0 0 0 0 0
## 342 0 0 0 0 0 0 0
## 343 0 0 0 0 0 0 0
## 344 0 0 0 0 0 0 0
## 345 0 0 0 0 0 0 0
## 346 0 0 0 0 0 0 0
## 347 0 0 0 0 0 0 0
## 348 0 0 0 0 0 0 0
## 349 0 0 0 0 0 0 0
## 350 0 0 0 0 0 0 0
## 351 0 0 0 0 0 0 0
## 352 0 0 0 0 0 0 0
## 353 0 0 0 0 0 0 0
## 354 0 0 0 0 0 0 0
## 355 0 0 0 0 0 0 0
## 356 0 0 0 0 0 0 0
## 357 0 0 0 0 0 0 0
## 358 0 0 0 0 0 0 0
## 359 0 0 0 0 0 0 0
## 360 0 0 0 0 0 0 0
## 361 0 0 0 0 0 0 0
## 362 0 0 0 0 0 0 0
## 363 0 0 0 0 0 0 0
## Kick3l.X1 Cross3l.X2 Knee3l.X2 Elbow3l.X2 Hook3l.X2 Jab3l.X2 Kick3l.X2
## 285 0 0 0 0 0 0 0
## 286 0 0 0 0 0 0 0
## 287 0 0 0 0 0 0 0
## 288 0 0 0 0 0 0 0
## 289 0 0 0 0 0 0 0
## 290 0 0 0 0 0 0 0
## 291 0 0 0 0 0 0 0
## 292 0 0 0 0 0 0 0
## 293 0 0 0 0 0 0 0
## 294 0 0 0 0 0 0 0
## 295 0 0 0 0 0 0 0
## 296 0 0 0 0 0 0 0
## 297 0 0 0 0 0 0 0
## 298 0 0 0 0 0 0 0
## 299 0 0 0 0 0 0 0
## 300 0 0 0 0 0 0 0
## 301 0 0 0 0 0 0 0
## 302 0 0 0 0 0 0 0
## 303 0 0 0 0 0 0 0
## 304 0 0 0 0 0 0 0
## 305 0 0 0 0 0 0 0
## 306 0 0 0 0 0 0 0
## 307 0 0 0 0 0 0 0
## 308 0 0 0 0 0 0 0
## 309 0 0 0 0 0 0 0
## 310 0 0 0 0 0 0 0
## 311 0 0 0 0 0 0 0
## 312 0 0 0 0 0 0 0
## 313 0 0 0 0 0 0 0
## 314 0 0 0 0 0 0 0
## 315 0 0 0 0 0 0 0
## 316 0 0 0 0 0 0 0
## 317 0 0 0 0 0 0 0
## 318 0 0 0 0 0 0 0
## 319 0 0 0 0 0 0 0
## 320 0 0 0 0 0 0 0
## 321 0 0 0 0 0 0 0
## 322 0 0 0 0 0 0 0
## 323 0 0 0 0 0 0 0
## 324 0 0 0 0 0 0 0
## 325 0 0 0 0 0 0 0
## 326 0 0 0 0 0 0 0
## 327 0 0 0 0 0 0 0
## 328 0 0 0 0 0 0 0
## 329 0 0 0 0 0 0 0
## 330 0 0 0 0 0 0 0
## 331 0 0 0 0 0 0 0
## 332 0 0 0 0 0 0 0
## 333 0 0 0 0 0 0 0
## 334 0 0 0 0 0 0 0
## 335 0 0 0 0 0 0 0
## 336 0 0 0 0 0 0 0
## 337 0 0 0 0 0 0 0
## 338 0 0 0 0 0 0 0
## 339 0 0 0 0 0 0 0
## 340 0 0 0 0 0 0 0
## 341 0 0 0 0 0 0 0
## 342 0 0 0 0 0 0 0
## 343 0 0 0 0 0 0 0
## 344 0 0 0 0 0 0 0
## 345 0 0 0 0 0 0 0
## 346 0 0 0 0 0 0 0
## 347 0 0 0 0 0 0 0
## 348 0 0 0 0 0 0 0
## 349 0 0 0 0 0 0 0
## 350 0 0 0 0 0 0 0
## 351 0 0 0 0 0 0 0
## 352 0 0 0 0 0 0 0
## 353 0 0 0 0 0 0 0
## 354 0 0 0 0 0 0 0
## 355 0 0 0 0 0 0 0
## 356 0 0 0 0 0 0 0
## 357 0 0 0 0 0 0 0
## 358 0 0 0 0 0 0 0
## 359 0 0 0 0 0 0 0
## 360 0 0 0 0 0 0 0
## 361 0 0 0 0 0 0 0
## 362 0 0 0 0 0 0 0
## 363 0 0 0 0 0 0 0
## upper3l.X1 upper3l.X2 takedown3l.X1 takedown3l.X2 hammer3l.X1 hammer3l.X2
## 285 0 0 0 0 0 0
## 286 0 0 0 0 0 0
## 287 0 0 0 0 0 0
## 288 0 0 0 0 0 0
## 289 0 0 0 0 0 0
## 290 0 0 0 0 0 0
## 291 0 0 0 0 0 0
## 292 0 0 0 0 0 0
## 293 0 0 0 0 0 0
## 294 0 0 0 0 0 0
## 295 0 0 0 0 0 0
## 296 0 0 0 0 0 0
## 297 0 0 0 0 0 0
## 298 0 0 0 0 0 0
## 299 0 0 0 0 0 0
## 300 0 0 0 0 0 0
## 301 0 0 0 0 0 0
## 302 0 0 0 0 0 0
## 303 0 0 0 0 0 0
## 304 0 0 0 0 0 0
## 305 0 0 0 0 0 0
## 306 0 0 0 0 0 0
## 307 0 0 0 0 0 0
## 308 0 0 0 0 0 0
## 309 0 0 0 0 0 0
## 310 0 0 0 0 0 0
## 311 0 0 0 0 0 0
## 312 0 0 0 0 0 0
## 313 0 0 0 0 0 0
## 314 0 0 0 0 0 0
## 315 0 0 0 0 0 0
## 316 0 0 0 0 0 0
## 317 0 0 0 0 0 0
## 318 0 0 0 0 0 0
## 319 0 0 0 0 0 0
## 320 0 0 0 0 0 0
## 321 0 0 0 0 0 0
## 322 0 0 0 0 0 0
## 323 0 0 0 0 0 0
## 324 0 0 0 0 0 0
## 325 0 0 0 0 0 0
## 326 0 0 0 0 0 0
## 327 0 0 0 0 0 0
## 328 0 0 0 0 0 0
## 329 0 0 0 0 0 0
## 330 0 0 0 0 0 0
## 331 0 0 0 0 0 0
## 332 0 0 0 0 0 0
## 333 0 0 0 0 0 0
## 334 0 0 0 0 0 0
## 335 0 0 0 0 0 0
## 336 0 0 0 0 0 0
## 337 0 0 0 0 0 0
## 338 0 0 0 0 0 0
## 339 0 0 0 0 0 0
## 340 0 0 0 0 0 0
## 341 0 0 0 0 0 0
## 342 0 0 0 0 0 0
## 343 0 0 0 0 0 0
## 344 0 0 0 0 0 0
## 345 0 0 0 0 0 0
## 346 0 0 0 0 0 0
## 347 0 0 0 0 0 0
## 348 0 0 0 0 0 0
## 349 0 0 0 0 0 0
## 350 0 0 0 0 0 0
## 351 0 0 0 0 0 0
## 352 0 0 0 0 0 0
## 353 0 0 0 0 0 0
## 354 0 0 0 0 0 0
## 355 0 0 0 0 0 0
## 356 0 0 0 0 0 0
## 357 0 0 0 0 0 0
## 358 0 0 0 0 0 0
## 359 0 0 0 0 0 0
## 360 0 0 0 0 0 0
## 361 0 0 0 0 0 0
## 362 0 0 0 0 0 0
## 363 0 0 0 0 0 0
## Crossm.X1 Kneem.X1 Elbowm.X1 Hookm.X1 Jabm.X1 Kickm.X1 Crossm.X2 Kneem.X2
## 285 0 0 0 0 0 1 0 0
## 286 1 0 0 0 0 0 0 0
## 287 0 0 0 0 0 1 0 0
## 288 0 0 0 0 0 1 0 0
## 289 0 0 0 0 0 1 0 0
## 290 0 0 0 0 1 0 0 0
## 291 0 0 0 0 0 1 0 0
## 292 0 0 0 0 0 0 0 0
## 293 0 0 0 0 0 0 0 0
## 294 0 0 0 0 0 1 1 0
## 295 0 0 0 0 0 1 0 0
## 296 0 0 0 0 0 0 0 0
## 297 0 0 0 0 1 0 0 0
## 298 0 0 0 0 0 1 0 0
## 299 0 0 0 0 0 1 0 0
## 300 0 0 0 0 0 0 0 0
## 301 0 0 0 0 0 0 0 0
## 302 0 0 0 0 0 1 0 0
## 303 0 0 0 0 1 0 0 0
## 304 0 0 0 0 0 1 0 0
## 305 0 0 0 0 1 0 0 0
## 306 0 0 0 0 0 0 0 0
## 307 0 0 0 0 1 0 0 0
## 308 0 0 0 0 0 0 0 0
## 309 0 0 0 0 0 0 0 0
## 310 0 0 0 0 0 0 0 0
## 311 0 0 0 0 1 0 0 0
## 312 0 0 0 0 1 0 1 0
## 313 1 0 0 0 0 0 0 0
## 314 0 0 0 0 0 0 1 0
## 315 0 0 0 0 1 0 0 0
## 316 0 0 0 0 1 0 0 0
## 317 1 0 0 0 0 0 0 0
## 318 0 0 0 0 1 0 0 0
## 319 0 0 0 0 0 0 0 0
## 320 0 0 0 0 0 1 0 0
## 321 0 0 0 0 0 0 0 0
## 322 0 0 0 0 0 0 0 0
## 323 1 0 0 0 0 0 0 0
## 324 0 0 0 0 0 0 0 0
## 325 0 0 0 0 0 0 0 0
## 326 0 0 0 0 0 0 0 0
## 327 0 0 0 0 0 1 0 0
## 328 0 0 0 0 0 0 0 0
## 329 0 0 0 0 1 0 0 0
## 330 0 0 0 0 0 0 0 0
## 331 0 0 0 0 0 1 0 0
## 332 0 0 0 0 1 0 0 0
## 333 1 0 0 0 0 0 0 0
## 334 0 0 0 0 0 1 0 0
## 335 1 0 0 0 0 0 0 0
## 336 0 0 0 0 0 1 0 0
## 337 0 0 0 0 0 0 0 0
## 338 0 0 0 0 0 0 0 0
## 339 0 0 0 0 0 0 0 0
## 340 0 0 0 0 1 0 0 0
## 341 0 0 0 0 1 0 0 0
## 342 0 0 0 0 0 0 0 0
## 343 0 0 0 0 1 0 1 0
## 344 0 0 0 0 0 1 0 0
## 345 0 0 0 0 0 0 0 0
## 346 1 0 0 0 0 0 0 0
## 347 0 0 0 0 1 0 0 0
## 348 0 0 0 0 0 1 0 0
## 349 0 0 0 0 0 0 0 0
## 350 0 0 0 0 0 0 0 0
## 351 0 0 0 0 0 0 0 0
## 352 0 0 0 0 0 0 0 0
## 353 0 0 0 0 0 0 0 0
## 354 0 0 0 0 1 0 0 0
## 355 0 0 0 0 0 0 0 0
## 356 0 0 0 0 0 0 0 0
## 357 0 0 0 0 0 1 0 0
## 358 1 0 0 0 0 0 0 0
## 359 0 0 0 0 0 0 1 0
## 360 0 0 0 0 0 0 1 0
## 361 1 0 0 0 0 0 0 0
## 362 0 0 0 0 1 0 0 0
## 363 0 0 0 0 0 1 0 0
## Elbowm.X2 Hookm.X2 Jabm.X2 Kickm.X2 upperm.X1 upperm.X2 takedownm.X1
## 285 0 0 0 0 0 0 0
## 286 0 0 0 0 0 0 0
## 287 0 0 0 0 0 0 0
## 288 0 0 0 0 0 0 0
## 289 0 0 0 0 0 0 0
## 290 0 0 0 0 0 0 0
## 291 0 0 0 0 0 0 0
## 292 0 0 0 0 0 0 0
## 293 0 0 0 0 0 0 0
## 294 0 0 0 0 0 0 0
## 295 0 0 0 0 0 0 0
## 296 0 0 0 0 0 0 0
## 297 0 0 0 0 0 0 0
## 298 0 0 0 0 0 0 0
## 299 0 0 0 0 0 0 0
## 300 0 0 1 0 0 0 0
## 301 0 1 0 0 0 0 0
## 302 0 0 0 0 0 0 0
## 303 0 0 0 0 0 0 0
## 304 0 0 0 0 0 0 0
## 305 0 1 0 0 0 0 0
## 306 0 0 0 0 0 0 0
## 307 0 0 0 0 0 0 0
## 308 0 0 0 0 0 0 0
## 309 0 0 1 0 0 0 0
## 310 0 0 0 0 0 0 0
## 311 0 0 0 1 0 0 0
## 312 0 0 0 0 0 0 0
## 313 0 0 0 0 0 0 0
## 314 0 0 0 0 0 0 0
## 315 0 0 0 0 0 0 0
## 316 0 0 0 0 0 0 0
## 317 0 0 0 0 0 0 0
## 318 0 0 0 0 0 0 0
## 319 0 1 0 0 0 0 0
## 320 0 0 0 0 0 0 0
## 321 0 0 1 0 0 0 0
## 322 0 0 0 0 0 0 0
## 323 0 0 0 0 0 0 0
## 324 0 0 0 0 0 0 0
## 325 0 0 0 0 0 0 0
## 326 0 1 0 0 0 0 0
## 327 0 0 0 0 0 0 0
## 328 0 0 0 0 0 0 0
## 329 0 0 0 0 0 0 0
## 330 0 0 0 0 0 0 0
## 331 0 0 0 0 0 0 0
## 332 0 0 0 0 0 0 0
## 333 0 0 0 0 0 0 0
## 334 0 0 0 0 0 0 0
## 335 0 0 0 0 0 0 0
## 336 0 0 0 0 0 0 0
## 337 0 0 0 1 0 0 0
## 338 0 0 1 0 0 0 0
## 339 0 0 0 0 1 0 0
## 340 0 0 0 0 0 0 0
## 341 0 0 0 0 0 0 0
## 342 0 0 0 0 0 0 0
## 343 0 0 0 0 0 0 0
## 344 0 0 0 0 0 0 0
## 345 0 0 1 0 0 0 0
## 346 0 0 0 0 0 0 0
## 347 0 1 0 0 0 0 0
## 348 0 0 0 0 0 0 0
## 349 0 0 0 0 0 0 0
## 350 0 0 0 0 0 0 0
## 351 0 0 0 0 0 0 0
## 352 0 0 0 0 0 0 0
## 353 0 0 0 0 0 0 0
## 354 0 0 0 0 0 0 0
## 355 0 0 0 0 0 0 0
## 356 0 0 1 0 0 0 0
## 357 0 0 0 0 0 0 0
## 358 0 0 0 0 0 0 0
## 359 0 0 0 0 0 0 0
## 360 0 0 0 0 0 0 0
## 361 0 0 0 0 0 0 0
## 362 0 0 0 0 0 0 0
## 363 0 0 0 0 0 0 0
## takedownm.X2 hammerm.X1 hammerm.X2 Cross2m.X1 Knee2m.X1 Elbow2m.X1
## 285 0 0 0 0 0 0
## 286 0 0 0 0 0 0
## 287 0 0 0 0 0 0
## 288 0 0 0 0 0 0
## 289 0 0 0 0 0 0
## 290 0 0 0 0 0 0
## 291 0 0 0 0 0 0
## 292 0 0 0 0 0 0
## 293 0 0 0 0 0 0
## 294 0 0 0 0 0 0
## 295 0 0 0 0 0 0
## 296 0 0 0 1 0 0
## 297 0 0 0 0 0 0
## 298 0 0 0 0 0 0
## 299 0 0 0 0 0 0
## 300 0 0 0 0 0 0
## 301 0 0 0 0 0 0
## 302 0 0 0 0 0 0
## 303 0 0 0 0 0 0
## 304 0 0 0 0 0 0
## 305 0 0 0 1 0 0
## 306 0 0 0 0 0 0
## 307 0 0 0 0 0 0
## 308 0 0 0 0 0 0
## 309 0 0 0 1 0 0
## 310 0 0 0 0 0 0
## 311 0 0 0 0 0 0
## 312 0 0 0 0 0 0
## 313 0 0 0 0 0 0
## 314 0 0 0 0 0 0
## 315 0 0 0 0 0 0
## 316 0 0 0 0 0 0
## 317 0 0 0 0 0 0
## 318 0 0 0 0 0 0
## 319 0 0 0 0 0 0
## 320 0 0 0 0 0 0
## 321 0 0 0 0 0 0
## 322 0 0 0 0 0 0
## 323 0 0 0 0 0 0
## 324 0 0 0 0 0 0
## 325 0 0 0 0 0 0
## 326 0 0 0 0 0 0
## 327 0 0 0 0 0 0
## 328 0 0 0 0 0 0
## 329 0 0 0 1 0 0
## 330 0 0 0 0 0 0
## 331 0 0 0 0 0 0
## 332 0 0 0 0 0 0
## 333 0 0 0 1 0 0
## 334 0 0 0 0 0 0
## 335 0 0 0 0 0 0
## 336 0 0 0 0 0 0
## 337 0 0 0 0 0 0
## 338 0 0 0 0 0 0
## 339 0 0 0 0 0 0
## 340 0 0 0 1 0 0
## 341 0 0 0 0 0 0
## 342 0 0 0 0 0 0
## 343 0 0 0 1 0 0
## 344 0 0 0 0 0 0
## 345 0 0 0 0 0 0
## 346 0 0 0 0 0 0
## 347 0 0 0 1 0 0
## 348 0 0 0 0 0 0
## 349 0 0 0 0 0 0
## 350 0 0 0 0 0 0
## 351 0 0 0 0 0 0
## 352 0 0 0 0 0 0
## 353 0 0 0 0 0 0
## 354 0 0 0 0 0 0
## 355 0 0 0 0 0 0
## 356 0 0 0 0 0 0
## 357 0 0 0 0 0 0
## 358 0 0 0 0 0 0
## 359 0 0 0 0 0 0
## 360 0 0 0 0 0 0
## 361 0 0 0 0 0 0
## 362 0 0 0 0 0 0
## 363 0 0 0 0 0 0
## Hook2m.X1 Jab2m.X1 Kick2m.X1 Cross2m.X2 Knee2m.X2 Elbow2m.X2 Hook2m.X2
## 285 0 0 0 0 0 0 0
## 286 0 0 0 0 0 0 0
## 287 0 0 0 0 0 0 0
## 288 0 0 0 0 0 0 0
## 289 0 0 0 0 0 0 0
## 290 0 0 0 0 0 0 0
## 291 0 0 0 0 0 0 0
## 292 0 0 0 0 0 0 0
## 293 0 0 0 0 0 0 0
## 294 0 0 0 0 0 0 0
## 295 0 0 0 0 0 0 0
## 296 0 0 0 0 0 0 0
## 297 0 0 0 0 0 0 0
## 298 0 0 0 0 0 0 0
## 299 0 0 0 0 0 0 0
## 300 0 0 0 1 0 0 0
## 301 0 0 0 0 0 0 0
## 302 0 0 0 0 0 0 0
## 303 0 0 0 0 0 0 0
## 304 0 0 0 0 0 0 0
## 305 0 0 0 1 0 0 0
## 306 0 0 0 0 0 0 0
## 307 0 0 0 0 0 0 0
## 308 0 1 0 0 0 0 0
## 309 0 0 0 0 0 0 0
## 310 0 0 0 0 0 0 0
## 311 0 0 0 0 0 0 0
## 312 0 0 0 0 0 0 0
## 313 0 0 0 0 0 0 0
## 314 0 0 0 0 0 0 0
## 315 0 0 0 0 0 0 0
## 316 0 0 0 0 0 0 0
## 317 0 0 0 0 0 0 0
## 318 0 0 0 0 0 0 0
## 319 0 0 0 0 0 0 0
## 320 0 0 0 0 0 0 0
## 321 0 0 0 1 0 0 0
## 322 0 0 0 0 0 0 0
## 323 0 0 0 0 0 0 0
## 324 0 0 0 0 0 0 0
## 325 0 0 0 0 0 0 0
## 326 0 0 0 0 0 0 0
## 327 0 0 0 0 0 0 0
## 328 0 0 0 0 0 0 0
## 329 0 0 0 0 0 0 0
## 330 0 0 0 0 0 0 0
## 331 0 0 0 0 0 0 0
## 332 0 0 0 0 0 0 0
## 333 0 0 0 0 0 0 0
## 334 0 0 0 0 0 0 0
## 335 0 0 0 0 0 0 0
## 336 0 0 0 0 0 0 0
## 337 0 0 0 0 0 0 0
## 338 0 0 0 1 0 0 0
## 339 0 0 0 0 0 0 0
## 340 0 0 0 0 0 0 0
## 341 0 0 0 0 0 0 0
## 342 0 0 0 0 0 0 0
## 343 0 0 0 0 0 0 0
## 344 0 0 0 0 0 0 0
## 345 0 0 0 1 0 0 0
## 346 0 0 0 0 0 0 0
## 347 0 0 0 0 0 0 0
## 348 0 0 0 0 0 0 0
## 349 0 0 0 0 0 0 0
## 350 0 0 0 0 0 0 0
## 351 0 0 0 0 0 0 0
## 352 0 0 0 0 0 0 0
## 353 0 0 0 0 0 0 0
## 354 0 0 0 0 0 0 0
## 355 0 0 0 0 0 0 0
## 356 0 0 0 1 0 0 0
## 357 0 0 0 0 0 0 0
## 358 0 0 0 0 0 0 0
## 359 0 0 0 0 0 0 1
## 360 0 0 0 0 0 0 0
## 361 0 0 0 0 0 0 0
## 362 0 0 0 0 0 0 0
## 363 0 0 0 0 0 0 0
## Jab2m.X2 Kick2m.X2 upper2m.X1 upper2m.X2 takedown2m.X1 takedown2m.X2
## 285 0 0 0 0 0 0
## 286 0 0 0 0 0 0
## 287 0 0 0 0 0 0
## 288 0 0 0 0 0 0
## 289 0 0 0 0 0 0
## 290 0 0 0 0 0 0
## 291 0 0 0 0 0 0
## 292 0 0 0 0 0 0
## 293 0 0 0 0 0 0
## 294 0 0 0 0 0 0
## 295 0 0 0 0 0 0
## 296 0 0 0 0 0 0
## 297 0 0 0 0 0 0
## 298 0 0 0 0 0 0
## 299 0 0 0 0 0 0
## 300 0 0 0 0 0 0
## 301 0 0 0 0 0 0
## 302 0 0 0 0 0 0
## 303 0 0 0 0 0 0
## 304 0 0 0 0 0 0
## 305 0 0 0 0 0 0
## 306 0 0 0 0 0 0
## 307 0 0 0 0 0 0
## 308 0 0 0 0 0 0
## 309 0 0 0 0 0 0
## 310 0 0 0 0 0 0
## 311 0 0 0 0 0 0
## 312 0 0 0 0 0 0
## 313 0 0 0 0 0 0
## 314 0 0 0 0 0 0
## 315 0 0 0 0 0 0
## 316 0 0 0 0 0 0
## 317 0 0 0 0 0 0
## 318 0 0 0 0 0 0
## 319 0 0 0 0 0 0
## 320 0 0 0 0 0 0
## 321 0 0 0 0 0 0
## 322 0 0 0 0 0 0
## 323 0 0 0 0 0 0
## 324 0 0 0 0 0 0
## 325 0 0 0 0 0 0
## 326 0 0 0 0 0 0
## 327 0 0 0 0 0 0
## 328 0 0 0 0 0 0
## 329 0 0 0 0 0 0
## 330 0 0 0 0 0 0
## 331 0 0 0 0 0 0
## 332 0 0 0 0 0 0
## 333 0 0 0 0 0 0
## 334 0 0 0 0 0 0
## 335 0 0 0 0 0 0
## 336 0 0 0 0 0 0
## 337 0 0 0 0 0 0
## 338 0 0 0 0 0 0
## 339 0 0 0 0 0 0
## 340 0 0 0 0 0 0
## 341 0 0 0 0 0 0
## 342 0 0 0 0 0 0
## 343 0 0 0 0 0 0
## 344 0 0 0 0 0 0
## 345 0 0 0 0 0 0
## 346 0 0 0 0 0 0
## 347 0 0 0 0 0 0
## 348 0 0 0 0 0 0
## 349 0 0 0 0 0 0
## 350 0 0 0 0 0 0
## 351 0 0 0 0 0 0
## 352 0 0 0 0 0 0
## 353 0 0 0 0 0 0
## 354 0 0 0 0 0 0
## 355 0 0 0 0 0 0
## 356 0 0 0 0 0 0
## 357 0 0 0 0 0 0
## 358 0 0 0 0 0 0
## 359 0 0 0 0 0 0
## 360 0 0 0 0 0 0
## 361 0 0 0 0 0 0
## 362 0 0 0 0 0 0
## 363 0 0 0 0 0 0
## hammer2m.X1 hammer2m.X2 Cross3m.X1 Knee3m.X1 Elbow3m.X1 Hook3m.X1 Jab3m.X1
## 285 0 0 0 0 0 0 0
## 286 0 0 0 0 0 0 0
## 287 0 0 0 0 0 0 0
## 288 0 0 0 0 0 0 0
## 289 0 0 0 0 0 0 0
## 290 0 0 0 0 0 0 0
## 291 0 0 0 0 0 0 0
## 292 0 0 0 0 0 0 0
## 293 0 0 0 0 0 0 0
## 294 0 0 0 0 0 0 0
## 295 0 0 0 0 0 0 0
## 296 0 0 0 0 0 0 0
## 297 0 0 0 0 0 0 0
## 298 0 0 0 0 0 0 0
## 299 0 0 0 0 0 0 0
## 300 0 0 0 0 0 0 0
## 301 0 0 0 0 0 0 0
## 302 0 0 0 0 0 0 0
## 303 0 0 0 0 0 0 0
## 304 0 0 0 0 0 0 0
## 305 0 0 0 0 0 0 0
## 306 0 0 0 0 0 0 0
## 307 0 0 0 0 0 0 0
## 308 0 0 1 0 0 0 0
## 309 0 0 0 0 0 0 0
## 310 0 0 0 0 0 0 0
## 311 0 0 0 0 0 0 0
## 312 0 0 0 0 0 0 0
## 313 0 0 0 0 0 0 0
## 314 0 0 0 0 0 0 0
## 315 0 0 0 0 0 0 0
## 316 0 0 0 0 0 0 0
## 317 0 0 0 0 0 0 0
## 318 0 0 0 0 0 0 0
## 319 0 0 0 0 0 0 0
## 320 0 0 0 0 0 0 0
## 321 0 0 0 0 0 0 0
## 322 0 0 0 0 0 0 0
## 323 0 0 0 0 0 0 0
## 324 0 0 0 0 0 0 0
## 325 0 0 0 0 0 0 0
## 326 0 0 0 0 0 0 0
## 327 0 0 0 0 0 0 0
## 328 0 0 0 0 0 0 0
## 329 0 0 0 0 0 0 0
## 330 0 0 0 0 0 0 0
## 331 0 0 0 0 0 0 0
## 332 0 0 0 0 0 0 0
## 333 0 0 0 0 0 0 0
## 334 0 0 0 0 0 0 0
## 335 0 0 0 0 0 0 0
## 336 0 0 0 0 0 0 0
## 337 0 0 0 0 0 0 0
## 338 0 0 0 0 0 0 0
## 339 0 0 0 0 0 0 0
## 340 0 0 0 0 0 0 0
## 341 0 0 0 0 0 0 0
## 342 0 0 0 0 0 0 0
## 343 0 0 0 0 0 0 0
## 344 0 0 0 0 0 0 0
## 345 0 0 0 0 0 0 0
## 346 0 0 0 0 0 0 0
## 347 0 0 0 0 0 0 0
## 348 0 0 0 0 0 0 0
## 349 0 0 0 0 0 0 0
## 350 0 0 0 0 0 0 0
## 351 0 0 0 0 0 0 0
## 352 0 0 0 0 0 0 0
## 353 0 0 0 0 0 0 0
## 354 0 0 0 0 0 0 0
## 355 0 0 0 0 0 0 0
## 356 0 0 0 0 0 0 0
## 357 0 0 0 0 0 0 0
## 358 0 0 0 0 0 0 0
## 359 0 0 0 0 0 0 0
## 360 0 0 0 0 0 0 0
## 361 0 0 0 0 0 0 0
## 362 0 0 0 0 0 0 0
## 363 0 0 0 0 0 0 0
## Kick3m.X1 Cross3m.X2 Knee3m.X2 Elbow3m.X2 Hook3m.X2 Jab3m.X2 Kick3m.X2
## 285 0 0 0 0 0 0 0
## 286 0 0 0 0 0 0 0
## 287 0 0 0 0 0 0 0
## 288 0 0 0 0 0 0 0
## 289 0 0 0 0 0 0 0
## 290 0 0 0 0 0 0 0
## 291 0 0 0 0 0 0 0
## 292 0 0 0 0 0 0 0
## 293 0 0 0 0 0 0 0
## 294 0 0 0 0 0 0 0
## 295 0 0 0 0 0 0 0
## 296 0 0 0 0 0 0 0
## 297 0 0 0 0 0 0 0
## 298 0 0 0 0 0 0 0
## 299 0 0 0 0 0 0 0
## 300 0 0 0 0 0 0 0
## 301 0 0 0 0 0 0 0
## 302 0 0 0 0 0 0 0
## 303 0 0 0 0 0 0 0
## 304 0 0 0 0 0 0 0
## 305 0 0 0 0 0 0 0
## 306 0 0 0 0 0 0 0
## 307 0 0 0 0 0 0 0
## 308 0 0 0 0 0 0 0
## 309 0 0 0 0 0 0 0
## 310 0 0 0 0 0 0 0
## 311 0 0 0 0 0 0 0
## 312 0 0 0 0 0 0 0
## 313 0 0 0 0 0 0 0
## 314 0 0 0 0 0 0 0
## 315 0 0 0 0 0 0 0
## 316 0 0 0 0 0 0 0
## 317 0 0 0 0 0 0 0
## 318 0 0 0 0 0 0 0
## 319 0 0 0 0 0 0 0
## 320 0 0 0 0 0 0 0
## 321 0 0 0 0 0 0 0
## 322 0 0 0 0 0 0 0
## 323 0 0 0 0 0 0 0
## 324 0 0 0 0 0 0 0
## 325 0 0 0 0 0 0 0
## 326 0 0 0 0 0 0 0
## 327 0 0 0 0 0 0 0
## 328 0 0 0 0 0 0 0
## 329 0 0 0 0 0 0 0
## 330 0 0 0 0 0 0 0
## 331 0 0 0 0 0 0 0
## 332 0 0 0 0 0 0 0
## 333 0 0 0 0 0 0 0
## 334 0 0 0 0 0 0 0
## 335 0 0 0 0 0 0 0
## 336 0 0 0 0 0 0 0
## 337 0 0 0 0 0 0 0
## 338 0 0 0 0 0 0 0
## 339 0 0 0 0 0 0 0
## 340 0 0 0 0 0 0 0
## 341 0 0 0 0 0 0 0
## 342 0 0 0 0 0 0 0
## 343 0 0 0 0 0 0 0
## 344 0 0 0 0 0 0 0
## 345 0 0 0 0 0 0 0
## 346 0 0 0 0 0 0 0
## 347 0 0 0 0 0 0 0
## 348 0 0 0 0 0 0 0
## 349 0 0 0 0 0 0 0
## 350 0 0 0 0 0 0 0
## 351 0 0 0 0 0 0 0
## 352 0 0 0 0 0 0 0
## 353 0 0 0 0 0 0 0
## 354 0 0 0 0 0 0 0
## 355 0 0 0 0 0 0 0
## 356 0 0 0 0 0 0 0
## 357 0 0 0 0 0 0 0
## 358 0 0 0 0 0 0 0
## 359 0 0 0 0 0 0 0
## 360 0 0 0 0 0 0 0
## 361 0 0 0 0 0 0 0
## 362 0 0 0 0 0 0 0
## 363 0 0 0 0 0 0 0
## upper3m.X1 upper3m.X2 takedown3m.X1 takedown3m.X2 hammer3m.X1 hammer3m.X2
## 285 0 0 0 0 0 0
## 286 0 0 0 0 0 0
## 287 0 0 0 0 0 0
## 288 0 0 0 0 0 0
## 289 0 0 0 0 0 0
## 290 0 0 0 0 0 0
## 291 0 0 0 0 0 0
## 292 0 0 0 0 0 0
## 293 0 0 0 0 0 0
## 294 0 0 0 0 0 0
## 295 0 0 0 0 0 0
## 296 0 0 0 0 0 0
## 297 0 0 0 0 0 0
## 298 0 0 0 0 0 0
## 299 0 0 0 0 0 0
## 300 0 0 0 0 0 0
## 301 0 0 0 0 0 0
## 302 0 0 0 0 0 0
## 303 0 0 0 0 0 0
## 304 0 0 0 0 0 0
## 305 0 0 0 0 0 0
## 306 0 0 0 0 0 0
## 307 0 0 0 0 0 0
## 308 0 0 0 0 0 0
## 309 0 0 0 0 0 0
## 310 0 0 0 0 0 0
## 311 0 0 0 0 0 0
## 312 0 0 0 0 0 0
## 313 0 0 0 0 0 0
## 314 0 0 0 0 0 0
## 315 0 0 0 0 0 0
## 316 0 0 0 0 0 0
## 317 0 0 0 0 0 0
## 318 0 0 0 0 0 0
## 319 0 0 0 0 0 0
## 320 0 0 0 0 0 0
## 321 0 0 0 0 0 0
## 322 0 0 0 0 0 0
## 323 0 0 0 0 0 0
## 324 0 0 0 0 0 0
## 325 0 0 0 0 0 0
## 326 0 0 0 0 0 0
## 327 0 0 0 0 0 0
## 328 0 0 0 0 0 0
## 329 0 0 0 0 0 0
## 330 0 0 0 0 0 0
## 331 0 0 0 0 0 0
## 332 0 0 0 0 0 0
## 333 0 0 0 0 0 0
## 334 0 0 0 0 0 0
## 335 0 0 0 0 0 0
## 336 0 0 0 0 0 0
## 337 0 0 0 0 0 0
## 338 0 0 0 0 0 0
## 339 0 0 0 0 0 0
## 340 0 0 0 0 0 0
## 341 0 0 0 0 0 0
## 342 0 0 0 0 0 0
## 343 0 0 0 0 0 0
## 344 0 0 0 0 0 0
## 345 0 0 0 0 0 0
## 346 0 0 0 0 0 0
## 347 0 0 0 0 0 0
## 348 0 0 0 0 0 0
## 349 0 0 0 0 0 0
## 350 0 0 0 0 0 0
## 351 0 0 0 0 0 0
## 352 0 0 0 0 0 0
## 353 0 0 0 0 0 0
## 354 0 0 0 0 0 0
## 355 0 0 0 0 0 0
## 356 0 0 0 0 0 0
## 357 0 0 0 0 0 0
## 358 0 0 0 0 0 0
## 359 0 0 0 0 0 0
## 360 0 0 0 0 0 0
## 361 0 0 0 0 0 0
## 362 0 0 0 0 0 0
## 363 0 0 0 0 0 0
## Crossr.X1 Kneer.X1 Elbowr.X1 Hookr.X1 Jabr.X1 Kickr.X1 Crossr.X2 Kneer.X2
## 285 0 0 0 0 0 0 0 0
## 286 0 0 0 0 0 0 0 0
## 287 0 0 0 0 0 0 0 0
## 288 0 0 0 0 0 0 0 0
## 289 0 0 0 0 0 0 0 0
## 290 0 0 0 0 0 0 0 0
## 291 0 0 0 0 0 0 0 0
## 292 0 0 0 0 0 0 0 0
## 293 0 0 0 0 0 0 0 0
## 294 0 0 0 0 0 0 0 0
## 295 0 0 0 0 0 0 0 0
## 296 0 0 0 0 0 0 0 0
## 297 0 0 0 0 0 0 0 0
## 298 0 0 0 0 0 0 0 0
## 299 0 0 0 0 0 0 0 0
## 300 0 0 0 0 0 0 0 0
## 301 0 0 0 0 0 0 0 0
## 302 0 0 0 0 0 0 0 0
## 303 0 0 0 0 0 0 0 0
## 304 0 0 0 0 0 0 0 0
## 305 0 0 0 0 0 0 0 0
## 306 0 0 0 0 0 0 0 0
## 307 0 0 0 0 0 0 0 0
## 308 0 0 0 0 0 0 0 1
## 309 0 0 0 0 0 0 0 0
## 310 0 0 0 0 0 0 0 0
## 311 0 0 0 0 0 0 0 0
## 312 0 0 0 0 0 0 0 0
## 313 0 0 0 0 0 0 0 0
## 314 0 0 0 0 0 0 0 0
## 315 0 0 0 0 0 0 0 0
## 316 0 0 0 0 0 0 0 0
## 317 0 0 0 0 0 0 0 0
## 318 0 0 0 0 0 0 0 0
## 319 0 0 0 0 0 0 0 0
## 320 0 0 0 0 0 0 0 0
## 321 0 0 0 0 0 0 0 0
## 322 0 0 0 0 0 0 0 0
## 323 0 0 0 0 0 0 0 0
## 324 0 0 0 0 0 0 0 1
## 325 1 0 0 0 0 0 0 0
## 326 0 0 0 0 0 0 0 0
## 327 0 0 0 0 0 0 0 0
## 328 0 0 0 0 0 0 0 0
## 329 0 0 0 0 0 0 0 0
## 330 0 1 0 0 0 0 0 0
## 331 0 0 0 0 0 0 0 0
## 332 0 0 0 0 0 0 0 0
## 333 0 0 0 0 0 0 0 0
## 334 0 0 0 0 0 0 0 0
## 335 0 0 0 0 0 0 0 0
## 336 0 0 0 0 0 0 0 0
## 337 0 0 0 0 0 0 0 0
## 338 0 0 0 0 0 0 0 0
## 339 0 0 0 0 0 0 0 0
## 340 0 0 0 0 0 0 0 0
## 341 0 0 0 0 0 0 0 0
## 342 0 0 0 0 0 0 0 0
## 343 0 0 0 0 0 0 0 0
## 344 0 0 0 0 0 0 0 0
## 345 0 0 0 0 0 0 0 0
## 346 0 0 0 0 0 0 0 0
## 347 0 0 0 0 0 0 0 0
## 348 0 0 0 0 0 0 0 0
## 349 0 0 0 0 0 0 0 0
## 350 0 0 0 0 0 1 0 0
## 351 0 0 0 0 0 0 0 0
## 352 0 0 0 0 0 0 0 0
## 353 0 0 0 0 0 0 0 1
## 354 0 0 0 0 0 0 0 0
## 355 0 0 0 0 0 0 0 0
## 356 0 0 0 0 0 0 0 0
## 357 0 0 0 0 0 0 0 0
## 358 0 0 0 0 0 0 0 0
## 359 0 0 0 0 0 0 0 0
## 360 0 0 0 0 0 0 0 0
## 361 0 0 0 0 0 0 0 0
## 362 0 0 0 0 0 0 0 0
## 363 0 0 0 0 0 0 0 0
## Elbowr.X2 Hookr.X2 Jabr.X2 Kickr.X2 upperr.X1 upperr.X2 takedownr.X1
## 285 0 0 0 0 0 0 0
## 286 0 0 0 0 0 0 0
## 287 0 0 0 0 0 0 0
## 288 0 0 0 0 0 0 0
## 289 0 0 0 0 0 0 0
## 290 0 0 0 0 0 0 0
## 291 0 0 0 0 0 0 0
## 292 0 0 0 0 0 0 0
## 293 0 0 0 0 0 0 0
## 294 0 0 0 0 0 0 0
## 295 0 0 0 0 0 0 0
## 296 0 0 1 0 0 0 0
## 297 0 0 0 0 0 0 0
## 298 0 0 0 0 0 0 0
## 299 0 0 0 0 0 0 0
## 300 0 0 0 0 0 0 0
## 301 0 0 0 0 0 0 0
## 302 0 0 0 0 0 0 0
## 303 0 0 0 0 0 0 0
## 304 0 0 0 0 0 0 0
## 305 0 0 0 0 0 0 0
## 306 0 0 0 0 0 0 0
## 307 0 0 0 0 0 0 0
## 308 0 0 0 1 0 0 0
## 309 0 0 0 0 0 0 0
## 310 0 0 0 0 0 0 0
## 311 0 0 0 0 0 0 0
## 312 0 0 0 0 0 0 0
## 313 0 0 0 0 0 0 0
## 314 0 0 0 0 0 0 0
## 315 0 0 0 0 0 0 0
## 316 0 0 0 0 0 0 0
## 317 0 0 0 0 0 0 0
## 318 0 0 0 0 0 0 0
## 319 0 0 0 0 0 0 0
## 320 0 0 0 0 0 0 0
## 321 0 0 0 0 0 0 0
## 322 0 0 0 0 0 1 0
## 323 0 0 0 0 0 0 0
## 324 0 0 0 1 0 0 0
## 325 0 0 0 0 0 0 0
## 326 0 0 0 0 0 0 0
## 327 0 0 0 0 0 0 0
## 328 0 0 0 1 0 0 0
## 329 0 0 0 0 0 0 0
## 330 0 0 0 0 0 0 0
## 331 0 0 0 0 0 0 0
## 332 0 0 0 0 0 0 0
## 333 0 0 0 0 0 0 0
## 334 0 0 0 0 0 0 0
## 335 0 0 0 0 0 0 0
## 336 0 0 0 0 0 0 0
## 337 0 0 0 0 0 0 0
## 338 0 0 0 0 0 0 0
## 339 0 0 0 0 0 0 0
## 340 0 0 0 0 0 0 0
## 341 0 0 0 0 0 0 0
## 342 0 0 0 0 0 0 0
## 343 0 0 0 0 0 0 0
## 344 0 0 0 0 0 0 0
## 345 0 0 0 0 0 0 0
## 346 0 0 0 0 0 0 0
## 347 0 0 0 0 0 0 0
## 348 0 0 0 0 0 0 0
## 349 0 0 0 0 0 0 0
## 350 0 0 0 0 0 0 0
## 351 0 0 0 0 0 0 0
## 352 0 0 0 0 0 0 0
## 353 0 0 0 0 0 0 0
## 354 0 0 0 0 0 0 0
## 355 0 0 0 0 0 0 0
## 356 0 0 0 0 0 0 0
## 357 0 0 0 0 0 0 0
## 358 0 0 0 0 0 0 0
## 359 0 0 0 0 0 0 0
## 360 0 0 0 0 0 0 0
## 361 0 0 0 0 0 0 0
## 362 0 0 0 0 0 0 0
## 363 0 0 0 0 0 0 0
## takedownr.X2 hammerr.X1 hammerr.X2 Cross2r.X1 Knee2r.X1 Elbow2r.X1
## 285 0 0 0 0 0 0
## 286 0 0 0 0 0 0
## 287 0 0 0 0 0 0
## 288 0 0 0 0 0 0
## 289 0 0 0 0 0 0
## 290 0 0 0 0 0 0
## 291 0 0 0 0 0 0
## 292 0 0 0 0 0 0
## 293 0 0 0 0 0 0
## 294 0 0 0 0 0 0
## 295 0 0 0 0 0 0
## 296 0 0 0 0 0 0
## 297 0 0 0 0 0 0
## 298 0 0 0 0 0 0
## 299 0 0 0 0 0 0
## 300 0 0 0 0 0 0
## 301 0 0 0 0 0 0
## 302 0 0 0 0 0 0
## 303 0 0 0 0 0 0
## 304 0 0 0 0 0 0
## 305 0 0 0 0 0 0
## 306 0 0 0 0 0 0
## 307 0 0 0 0 0 0
## 308 0 0 0 0 0 0
## 309 0 0 0 0 0 0
## 310 0 0 0 0 0 0
## 311 0 0 0 0 0 0
## 312 0 0 0 0 0 0
## 313 0 0 0 0 0 0
## 314 0 0 0 0 0 0
## 315 0 0 0 0 0 0
## 316 0 0 0 0 0 0
## 317 0 0 0 0 0 0
## 318 0 0 0 0 0 0
## 319 0 0 0 0 0 0
## 320 0 0 0 0 0 0
## 321 0 0 0 0 0 0
## 322 0 0 0 0 0 0
## 323 0 0 0 0 0 0
## 324 0 0 0 0 0 0
## 325 0 0 0 0 0 0
## 326 0 0 0 0 0 0
## 327 0 0 0 0 0 0
## 328 0 0 0 0 0 0
## 329 0 0 0 0 0 0
## 330 0 0 0 0 0 0
## 331 0 0 0 0 0 0
## 332 0 0 0 0 0 0
## 333 0 0 0 0 0 0
## 334 0 0 0 0 0 0
## 335 0 0 0 0 0 0
## 336 0 0 0 0 0 0
## 337 0 0 0 0 0 0
## 338 0 0 0 0 0 0
## 339 0 0 0 0 0 0
## 340 0 0 0 0 0 0
## 341 0 0 0 0 0 0
## 342 0 0 0 0 0 0
## 343 0 0 0 0 0 0
## 344 0 0 0 0 0 0
## 345 0 0 0 0 0 0
## 346 0 0 0 0 0 0
## 347 0 0 0 0 0 0
## 348 0 0 0 0 0 0
## 349 0 0 0 0 0 0
## 350 0 0 0 0 0 0
## 351 0 0 0 0 0 0
## 352 0 0 0 0 0 0
## 353 0 0 0 0 0 0
## 354 0 0 0 0 0 0
## 355 0 0 0 0 0 0
## 356 0 0 0 0 0 0
## 357 0 0 0 0 0 0
## 358 0 0 0 0 0 0
## 359 0 0 0 0 0 0
## 360 0 0 0 0 0 0
## 361 0 0 0 0 0 0
## 362 0 0 0 0 0 0
## 363 0 0 0 0 0 0
## Hook2r.X1 Jab2r.X1 Kick2r.X1 Cross2r.X2 Knee2r.X2 Elbow2r.X2 Hook2r.X2
## 285 0 0 0 0 0 0 0
## 286 0 0 0 0 0 0 0
## 287 0 0 0 0 0 0 0
## 288 0 0 0 0 0 0 0
## 289 0 0 0 0 0 0 0
## 290 0 0 0 0 0 0 0
## 291 0 0 0 0 0 0 0
## 292 0 0 0 0 0 0 0
## 293 0 0 0 0 0 0 0
## 294 0 0 0 0 0 0 0
## 295 0 0 0 0 0 0 0
## 296 0 0 0 0 0 0 0
## 297 0 0 0 0 0 0 0
## 298 0 0 0 0 0 0 0
## 299 0 0 0 0 0 0 0
## 300 0 0 0 0 0 0 0
## 301 0 0 0 0 0 0 0
## 302 0 0 0 0 0 0 0
## 303 0 0 0 0 0 0 0
## 304 0 0 0 0 0 0 0
## 305 0 0 0 0 0 0 0
## 306 0 0 0 0 0 0 0
## 307 0 0 0 0 0 0 0
## 308 0 0 0 0 0 0 0
## 309 0 0 0 0 0 0 0
## 310 0 0 0 0 0 0 0
## 311 0 0 0 0 0 0 0
## 312 0 0 0 0 0 0 0
## 313 0 0 0 0 0 0 0
## 314 0 0 0 0 0 0 0
## 315 0 0 0 0 0 0 0
## 316 0 0 0 0 0 0 0
## 317 0 0 0 0 0 0 0
## 318 0 0 0 0 0 0 0
## 319 0 0 0 0 0 0 0
## 320 0 0 0 0 0 0 0
## 321 0 0 0 0 0 0 0
## 322 0 0 0 0 0 0 0
## 323 0 0 0 0 0 0 0
## 324 0 0 0 0 0 0 0
## 325 0 0 0 0 0 0 0
## 326 0 0 0 0 0 0 0
## 327 0 0 0 0 0 0 0
## 328 0 0 0 0 0 0 0
## 329 0 0 0 0 0 0 0
## 330 0 0 0 0 0 0 0
## 331 0 0 0 0 0 0 0
## 332 0 0 0 0 0 0 0
## 333 0 0 0 0 0 0 0
## 334 0 0 0 0 0 0 0
## 335 0 0 0 0 0 0 0
## 336 0 0 0 0 0 0 0
## 337 0 0 0 0 0 0 0
## 338 0 0 0 0 0 0 0
## 339 0 0 0 0 0 0 0
## 340 0 0 0 0 0 0 0
## 341 0 0 0 0 0 0 0
## 342 0 0 0 0 0 0 0
## 343 0 0 0 0 0 0 0
## 344 0 0 0 0 0 0 0
## 345 0 0 0 0 0 0 0
## 346 0 0 0 0 0 0 0
## 347 0 0 0 0 0 0 0
## 348 0 0 0 0 0 0 0
## 349 0 0 0 0 0 0 0
## 350 0 0 0 0 0 0 0
## 351 0 0 0 0 0 0 0
## 352 0 0 0 0 0 0 0
## 353 0 0 0 0 0 0 0
## 354 0 0 0 0 0 0 0
## 355 0 0 0 0 0 0 0
## 356 0 0 0 0 0 0 0
## 357 0 0 0 0 0 0 0
## 358 0 0 0 0 0 0 0
## 359 0 0 0 0 0 0 0
## 360 0 0 0 0 0 0 0
## 361 0 0 0 0 0 0 0
## 362 0 0 0 0 0 0 0
## 363 0 0 0 0 0 0 0
## Jab2r.X2 Kick2r.X2 upper2r.X1 upper2r.X2 takedown2r.X1 takedown2r.X2
## 285 0 0 0 0 0 0
## 286 0 0 0 0 0 0
## 287 0 0 0 0 0 0
## 288 0 0 0 0 0 0
## 289 0 0 0 0 0 0
## 290 0 0 0 0 0 0
## 291 0 0 0 0 0 0
## 292 0 0 0 0 0 0
## 293 0 0 0 0 0 0
## 294 0 0 0 0 0 0
## 295 0 0 0 0 0 0
## 296 0 0 0 0 0 0
## 297 0 0 0 0 0 0
## 298 0 0 0 0 0 0
## 299 0 0 0 0 0 0
## 300 0 0 0 0 0 0
## 301 0 0 0 0 0 0
## 302 0 0 0 0 0 0
## 303 0 0 0 0 0 0
## 304 0 0 0 0 0 0
## 305 0 0 0 0 0 0
## 306 0 0 0 0 0 0
## 307 0 0 0 0 0 0
## 308 0 0 0 0 0 0
## 309 0 0 0 0 0 0
## 310 0 0 0 0 0 0
## 311 0 0 0 0 0 0
## 312 0 0 0 0 0 0
## 313 0 0 0 0 0 0
## 314 0 0 0 0 0 0
## 315 0 0 0 0 0 0
## 316 0 0 0 0 0 0
## 317 0 0 0 0 0 0
## 318 0 0 0 0 0 0
## 319 0 0 0 0 0 0
## 320 0 0 0 0 0 0
## 321 0 0 0 0 0 0
## 322 0 0 0 0 0 0
## 323 0 0 0 0 0 0
## 324 0 0 0 0 0 0
## 325 0 0 0 0 0 0
## 326 0 0 0 0 0 0
## 327 0 0 0 0 0 0
## 328 0 0 0 0 0 0
## 329 0 0 0 0 0 0
## 330 0 0 0 0 0 0
## 331 0 0 0 0 0 0
## 332 0 0 0 0 0 0
## 333 0 0 0 0 0 0
## 334 0 0 0 0 0 0
## 335 0 0 0 0 0 0
## 336 0 0 0 0 0 0
## 337 0 0 0 0 0 0
## 338 0 0 0 0 0 0
## 339 0 0 0 0 0 0
## 340 0 0 0 0 0 0
## 341 0 0 0 0 0 0
## 342 0 0 0 0 0 0
## 343 0 0 0 0 0 0
## 344 0 0 0 0 0 0
## 345 0 0 0 0 0 0
## 346 0 0 0 0 0 0
## 347 0 0 0 0 0 0
## 348 0 0 0 0 0 0
## 349 0 0 0 0 0 0
## 350 0 0 0 0 0 0
## 351 0 0 0 0 0 0
## 352 0 0 0 0 0 0
## 353 0 0 0 0 0 0
## 354 0 0 0 0 0 0
## 355 0 0 0 0 0 0
## 356 0 0 0 0 0 0
## 357 0 0 0 0 0 0
## 358 0 0 0 0 0 0
## 359 0 0 0 0 0 0
## 360 0 0 0 0 0 0
## 361 0 0 0 0 0 0
## 362 0 0 0 0 0 0
## 363 0 0 0 0 0 0
## hammer2r.X1 hammer2r.X2 Cross3r.X1 Knee3r.X1 Elbow3r.X1 Hook3r.X1 Jab3r.X1
## 285 0 0 0 0 0 0 0
## 286 0 0 0 0 0 0 0
## 287 0 0 0 0 0 0 0
## 288 0 0 0 0 0 0 0
## 289 0 0 0 0 0 0 0
## 290 0 0 0 0 0 0 0
## 291 0 0 0 0 0 0 0
## 292 0 0 0 0 0 0 0
## 293 0 0 0 0 0 0 0
## 294 0 0 0 0 0 0 0
## 295 0 0 0 0 0 0 0
## 296 0 0 0 0 0 0 0
## 297 0 0 0 0 0 0 0
## 298 0 0 0 0 0 0 0
## 299 0 0 0 0 0 0 0
## 300 0 0 0 0 0 0 0
## 301 0 0 0 0 0 0 0
## 302 0 0 0 0 0 0 0
## 303 0 0 0 0 0 0 0
## 304 0 0 0 0 0 0 0
## 305 0 0 0 0 0 0 0
## 306 0 0 0 0 0 0 0
## 307 0 0 0 0 0 0 0
## 308 0 0 0 0 0 0 0
## 309 0 0 0 0 0 0 0
## 310 0 0 0 0 0 0 0
## 311 0 0 0 0 0 0 0
## 312 0 0 0 0 0 0 0
## 313 0 0 0 0 0 0 0
## 314 0 0 0 0 0 0 0
## 315 0 0 0 0 0 0 0
## 316 0 0 0 0 0 0 0
## 317 0 0 0 0 0 0 0
## 318 0 0 0 0 0 0 0
## 319 0 0 0 0 0 0 0
## 320 0 0 0 0 0 0 0
## 321 0 0 0 0 0 0 0
## 322 0 0 0 0 0 0 0
## 323 0 0 0 0 0 0 0
## 324 0 0 0 0 0 0 0
## 325 0 0 0 0 0 0 0
## 326 0 0 0 0 0 0 0
## 327 0 0 0 0 0 0 0
## 328 0 0 0 0 0 0 0
## 329 0 0 0 0 0 0 0
## 330 0 0 0 0 0 0 0
## 331 0 0 0 0 0 0 0
## 332 0 0 0 0 0 0 0
## 333 0 0 0 0 0 0 0
## 334 0 0 0 0 0 0 0
## 335 0 0 0 0 0 0 0
## 336 0 0 0 0 0 0 0
## 337 0 0 0 0 0 0 0
## 338 0 0 0 0 0 0 0
## 339 0 0 0 0 0 0 0
## 340 0 0 0 0 0 0 0
## 341 0 0 0 0 0 0 0
## 342 0 0 0 0 0 0 0
## 343 0 0 0 0 0 0 0
## 344 0 0 0 0 0 0 0
## 345 0 0 0 0 0 0 0
## 346 0 0 0 0 0 0 0
## 347 0 0 0 0 0 0 0
## 348 0 0 0 0 0 0 0
## 349 0 0 0 0 0 0 0
## 350 0 0 0 0 0 0 0
## 351 0 0 0 0 0 0 0
## 352 0 0 0 0 0 0 0
## 353 0 0 0 0 0 0 0
## 354 0 0 0 0 0 0 0
## 355 0 0 0 0 0 0 0
## 356 0 0 0 0 0 0 0
## 357 0 0 0 0 0 0 0
## 358 0 0 0 0 0 0 0
## 359 0 0 0 0 0 0 0
## 360 0 0 0 0 0 0 0
## 361 0 0 0 0 0 0 0
## 362 0 0 0 0 0 0 0
## 363 0 0 0 0 0 0 0
## Kick3r.X1 Cross3r.X2 Knee3r.X2 Elbow3r.X2 Hook3r.X2 Jab3r.X2 Kick3r.X2
## 285 0 0 0 0 0 0 0
## 286 0 0 0 0 0 0 0
## 287 0 0 0 0 0 0 0
## 288 0 0 0 0 0 0 0
## 289 0 0 0 0 0 0 0
## 290 0 0 0 0 0 0 0
## 291 0 0 0 0 0 0 0
## 292 0 0 0 0 0 0 0
## 293 0 0 0 0 0 0 0
## 294 0 0 0 0 0 0 0
## 295 0 0 0 0 0 0 0
## 296 0 0 0 0 0 0 0
## 297 0 0 0 0 0 0 0
## 298 0 0 0 0 0 0 0
## 299 0 0 0 0 0 0 0
## 300 0 0 0 0 0 0 0
## 301 0 0 0 0 0 0 0
## 302 0 0 0 0 0 0 0
## 303 0 0 0 0 0 0 0
## 304 0 0 0 0 0 0 0
## 305 0 0 0 0 0 0 0
## 306 0 0 0 0 0 0 0
## 307 0 0 0 0 0 0 0
## 308 0 0 0 0 0 0 0
## 309 0 0 0 0 0 0 0
## 310 0 0 0 0 0 0 0
## 311 0 0 0 0 0 0 0
## 312 0 0 0 0 0 0 0
## 313 0 0 0 0 0 0 0
## 314 0 0 0 0 0 0 0
## 315 0 0 0 0 0 0 0
## 316 0 0 0 0 0 0 0
## 317 0 0 0 0 0 0 0
## 318 0 0 0 0 0 0 0
## 319 0 0 0 0 0 0 0
## 320 0 0 0 0 0 0 0
## 321 0 0 0 0 0 0 0
## 322 0 0 0 0 0 0 0
## 323 0 0 0 0 0 0 0
## 324 0 0 0 0 0 0 0
## 325 0 0 0 0 0 0 0
## 326 0 0 0 0 0 0 0
## 327 0 0 0 0 0 0 0
## 328 0 0 0 0 0 0 0
## 329 0 0 0 0 0 0 0
## 330 0 0 0 0 0 0 0
## 331 0 0 0 0 0 0 0
## 332 0 0 0 0 0 0 0
## 333 0 0 0 0 0 0 0
## 334 0 0 0 0 0 0 0
## 335 0 0 0 0 0 0 0
## 336 0 0 0 0 0 0 0
## 337 0 0 0 0 0 0 0
## 338 0 0 0 0 0 0 0
## 339 0 0 0 0 0 0 0
## 340 0 0 0 0 0 0 0
## 341 0 0 0 0 0 0 0
## 342 0 0 0 0 0 0 0
## 343 0 0 0 0 0 0 0
## 344 0 0 0 0 0 0 0
## 345 0 0 0 0 0 0 0
## 346 0 0 0 0 0 0 0
## 347 0 0 0 0 0 0 0
## 348 0 0 0 0 0 0 0
## 349 0 0 0 0 0 0 0
## 350 0 0 0 0 0 0 0
## 351 0 0 0 0 0 0 0
## 352 0 0 0 0 0 0 0
## 353 0 0 0 0 0 0 0
## 354 0 0 0 0 0 0 0
## 355 0 0 0 0 0 0 0
## 356 0 0 0 0 0 0 0
## 357 0 0 0 0 0 0 0
## 358 0 0 0 0 0 0 0
## 359 0 0 0 0 0 0 0
## 360 0 0 0 0 0 0 0
## 361 0 0 0 0 0 0 0
## 362 0 0 0 0 0 0 0
## 363 0 0 0 0 0 0 0
## upper3r.X1 upper3r.X2 takedown3r.X1 takedown3r.X2 hammer3r.X1 hammer3r.X2
## 285 0 0 0 0 0 0
## 286 0 0 0 0 0 0
## 287 0 0 0 0 0 0
## 288 0 0 0 0 0 0
## 289 0 0 0 0 0 0
## 290 0 0 0 0 0 0
## 291 0 0 0 0 0 0
## 292 0 0 0 0 0 0
## 293 0 0 0 0 0 0
## 294 0 0 0 0 0 0
## 295 0 0 0 0 0 0
## 296 0 0 0 0 0 0
## 297 0 0 0 0 0 0
## 298 0 0 0 0 0 0
## 299 0 0 0 0 0 0
## 300 0 0 0 0 0 0
## 301 0 0 0 0 0 0
## 302 0 0 0 0 0 0
## 303 0 0 0 0 0 0
## 304 0 0 0 0 0 0
## 305 0 0 0 0 0 0
## 306 0 0 0 0 0 0
## 307 0 0 0 0 0 0
## 308 0 0 0 0 0 0
## 309 0 0 0 0 0 0
## 310 0 0 0 0 0 0
## 311 0 0 0 0 0 0
## 312 0 0 0 0 0 0
## 313 0 0 0 0 0 0
## 314 0 0 0 0 0 0
## 315 0 0 0 0 0 0
## 316 0 0 0 0 0 0
## 317 0 0 0 0 0 0
## 318 0 0 0 0 0 0
## 319 0 0 0 0 0 0
## 320 0 0 0 0 0 0
## 321 0 0 0 0 0 0
## 322 0 0 0 0 0 0
## 323 0 0 0 0 0 0
## 324 0 0 0 0 0 0
## 325 0 0 0 0 0 0
## 326 0 0 0 0 0 0
## 327 0 0 0 0 0 0
## 328 0 0 0 0 0 0
## 329 0 0 0 0 0 0
## 330 0 0 0 0 0 0
## 331 0 0 0 0 0 0
## 332 0 0 0 0 0 0
## 333 0 0 0 0 0 0
## 334 0 0 0 0 0 0
## 335 0 0 0 0 0 0
## 336 0 0 0 0 0 0
## 337 0 0 0 0 0 0
## 338 0 0 0 0 0 0
## 339 0 0 0 0 0 0
## 340 0 0 0 0 0 0
## 341 0 0 0 0 0 0
## 342 0 0 0 0 0 0
## 343 0 0 0 0 0 0
## 344 0 0 0 0 0 0
## 345 0 0 0 0 0 0
## 346 0 0 0 0 0 0
## 347 0 0 0 0 0 0
## 348 0 0 0 0 0 0
## 349 0 0 0 0 0 0
## 350 0 0 0 0 0 0
## 351 0 0 0 0 0 0
## 352 0 0 0 0 0 0
## 353 0 0 0 0 0 0
## 354 0 0 0 0 0 0
## 355 0 0 0 0 0 0
## 356 0 0 0 0 0 0
## 357 0 0 0 0 0 0
## 358 0 0 0 0 0 0
## 359 0 0 0 0 0 0
## 360 0 0 0 0 0 0
## 361 0 0 0 0 0 0
## 362 0 0 0 0 0 0
## 363 0 0 0 0 0 0
Fourth opponent:
Table3b <- Added3[split3:(length(Added3$Round)),]
Table3b
## Round SecondsIntoRound lastAction SecondsLastRoundAction cmTotHitsR.X1
## 364 1 5 299 5 NA
## 365 1 6 5 1 NA
## 366 1 8 6 2 NA
## 367 1 9 8 1 NA
## 368 1 10 9 1 NA
## 369 1 11 10 1 NA
## 370 1 14 11 3 NA
## 371 1 16 14 2 NA
## 372 1 18 16 2 NA
## 373 1 19 18 1 NA
## 374 1 21 19 2 NA
## 375 1 22 21 1 NA
## 376 1 23 22 1 NA
## 377 1 24 23 1 NA
## 378 1 25 24 1 NA
## 379 1 27 25 2 NA
## 380 1 29 27 2 NA
## 381 1 30 29 1 NA
## 382 1 31 30 1 NA
## 383 1 34 31 3 NA
## 384 1 35 34 1 NA
## 385 1 36 35 1 NA
## 386 1 38 36 2 NA
## 387 1 39 38 1 NA
## 388 1 40 39 1 NA
## 389 1 41 40 1 NA
## 390 1 43 41 2 NA
## 391 1 44 43 1 NA
## 392 1 45 44 1 NA
## 393 1 46 45 1 NA
## cmTotHitsL.X1 cmTotHitsM.X1 TotLandsX1 TotMissedX1 TotReceivedX1
## 364 NA NA 0 1 0
## 365 NA NA 0 1 0
## 366 NA NA 0 1 0
## 367 NA NA 0 1 0
## 368 NA NA 1 1 0
## 369 NA NA 1 1 0
## 370 NA NA 0 3 0
## 371 NA NA 0 1 0
## 372 NA NA 1 0 0
## 373 NA NA 0 0 0
## 374 NA NA 0 0 0
## 375 NA NA 1 1 0
## 376 NA NA 0 2 0
## 377 NA NA 1 0 0
## 378 NA NA 0 2 0
## 379 NA NA 0 1 0
## 380 NA NA 1 0 0
## 381 NA NA 1 0 0
## 382 NA NA 0 2 0
## 383 NA NA 0 1 0
## 384 NA NA 1 1 0
## 385 NA NA 1 1 0
## 386 NA NA 0 0 0
## 387 NA NA 1 0 0
## 388 NA NA 0 0 0
## 389 NA NA 0 1 0
## 390 NA NA 1 0 0
## 391 NA NA 2 0 0
## 392 NA NA 1 0 0
## 393 NA NA 0 0 0
## cmTotHitsR.X2 cmTotHitsL.X2 cmTotHitsM.X2 TotLandsX2 TotMissedX2
## 364 NA NA NA 0 0
## 365 NA NA NA 0 1
## 366 NA NA NA 0 0
## 367 NA NA NA 0 0
## 368 NA NA NA 0 1
## 369 NA NA NA 0 1
## 370 NA NA NA 0 0
## 371 NA NA NA 0 0
## 372 NA NA NA 0 2
## 373 NA NA NA 0 0
## 374 NA NA NA 0 1
## 375 NA NA NA 0 0
## 376 NA NA NA 0 0
## 377 NA NA NA 0 0
## 378 NA NA NA 0 0
## 379 NA NA NA 0 0
## 380 NA NA NA 0 1
## 381 NA NA NA 0 1
## 382 NA NA NA 0 1
## 383 NA NA NA 0 0
## 384 NA NA NA 0 1
## 385 NA NA NA 0 0
## 386 NA NA NA 0 0
## 387 NA NA NA 0 0
## 388 NA NA NA 0 0
## 389 NA NA NA 0 0
## 390 NA NA NA 0 0
## 391 NA NA NA 0 0
## 392 NA NA NA 0 0
## 393 NA NA NA 0 0
## TotReceivedX2 Time
## 364 0 4:54
## 365 0 4:53
## 366 0 4:51
## 367 0 4:50
## 368 1 4:49
## 369 1 4:48
## 370 0 4:45
## 371 0 4:43
## 372 1 4:41
## 373 0 4:40
## 374 0 4:38
## 375 1 4:37
## 376 0 4:36
## 377 1 4:35
## 378 0 4:34
## 379 0 4:32
## 380 1 4:30
## 381 1 4:29
## 382 0 4:28
## 383 0 4:25
## 384 1 4:24
## 385 1 4:23
## 386 0 4:21
## 387 1 4:20
## 388 0 4:19
## 389 0 4:18
## 390 1 4:16
## 391 2 4:15
## 392 1 4:14
## 393 0 4:13
## FighterActionReactions.X1
## 364 missed a L jab to face
## 365 missed a R cross to face
## 366 missed a R cross to face
## 367 missed a R push kick to body
## 368 missed a R cross to face, lands a L jab to face
## 369 missed a L jab to face, lands a R cross to face
## 370 missed a R cross, missed a L jab to face, missed a R cross to face
## 371 missed a R push kick to body
## 372 lands a R cross to face
## 373 turns body to side gets out of clinch
## 374 <NA>
## 375 lands L jab to face, misses R cross to face
## 376 misses L jab to face, misses R cross to face,
## 377 lands L jab to face face
## 378 misses R cross to face, misses L upper
## 379 misses R cross to body
## 380 lands L jab to face
## 381 lands R cross to face, ducks R cross left
## 382 misses L jab to face, misses R cross to face,
## 383 misses R upper to face
## 384 lands L jab to face, misses R cross to face
## 385 misses L jab to face, lands R cross to face
## 386 runs to and feigns a R cross to face
## 387 lands a R cross to face
## 388 <NA>
## 389 misses R cross to face
## 390 lands a R cross to face
## 391 lands a L jab to face, lands R cross to face
## 392 lands downward L jab to face
## 393 referee gets between and stops fight TKO
## FightersActionsReactions.X2 Notes
## 364 <NA> Rousey
## 365 missed a L jab to face Rousey
## 366 <NA> Rousey
## 367 <NA> Rousey
## 368 missed a R cross to face Rousey
## 369 missed a L push kick to body Rousey
## 370 <NA> Rousey
## 371 <NA> Rousey
## 372 missed a L push kick to body, missed a L jab to face Rousey
## 373 attempts head clinch Rousey
## 374 misses L front push kick to body Rousey
## 375 blocks, ducks cross Rousey
## 376 blocks jab and cross Rousey
## 377 <NA> Rousey
## 378 blocks jab, pushes L upper hand from face Rousey
## 379 pushes off with block of R cross Rousey
## 380 misses L jab to face, outreached by opponent Rousey
## 381 misses R cross to face Rousey
## 382 side steps R, misses L jab Rousey
## 383 <NA> Rousey
## 384 misses L jab to face, blocks R cross Rousey
## 385 <NA> Rousey
## 386 attempts head clinch Rousey
## 387 <NA> Rousey
## 388 loses attempted clinch Rousey
## 389 blocks and ducks R cross to face against cage Rousey
## 390 tries to block R cross to face but outreached overhead Rousey
## 391 stumbles against cage with L jab to face, receives R cross to face Rousey
## 392 falling to knees against cage Rousey
## 393 <NA> Rousey
## Crossl.X1 Kneel.X1 Elbowl.X1 Hookl.X1 Jabl.X1 Kickl.X1 Crossl.X2 Kneel.X2
## 364 0 0 0 0 0 0 0 0
## 365 0 0 0 0 0 0 0 0
## 366 0 0 0 0 0 0 0 0
## 367 0 0 0 0 0 0 0 0
## 368 0 0 0 0 0 0 0 0
## 369 0 0 0 0 0 0 0 0
## 370 0 0 0 0 0 0 0 0
## 371 0 0 0 0 0 0 0 0
## 372 1 0 0 0 0 0 0 0
## 373 0 0 0 0 0 0 0 0
## 374 0 0 0 0 0 0 0 0
## 375 0 0 0 0 1 0 0 0
## 376 0 0 0 0 0 0 0 0
## 377 0 0 0 0 1 0 0 0
## 378 0 0 0 0 0 0 0 0
## 379 0 0 0 0 0 0 0 0
## 380 0 0 0 0 1 0 0 0
## 381 1 0 0 0 0 0 0 0
## 382 0 0 0 0 0 0 0 0
## 383 0 0 0 0 0 0 0 0
## 384 0 0 0 0 1 0 0 0
## 385 0 0 0 0 0 0 0 0
## 386 0 0 0 0 0 0 0 0
## 387 1 0 0 0 0 0 0 0
## 388 0 0 0 0 0 0 0 0
## 389 0 0 0 0 0 0 0 0
## 390 1 0 0 0 0 0 0 0
## 391 0 0 0 0 1 0 0 0
## 392 0 0 0 0 1 0 0 0
## 393 0 0 0 0 0 0 0 0
## Elbowl.X2 Hookl.X2 Jabl.X2 Kickl.X2 upperl.X1 upperl.X2 takedownl.X1
## 364 0 0 0 0 0 0 0
## 365 0 0 0 0 0 0 0
## 366 0 0 0 0 0 0 0
## 367 0 0 0 0 0 0 0
## 368 0 0 0 0 0 0 0
## 369 0 0 0 0 0 0 0
## 370 0 0 0 0 0 0 0
## 371 0 0 0 0 0 0 0
## 372 0 0 0 0 0 0 0
## 373 0 0 0 0 0 0 0
## 374 0 0 0 0 0 0 0
## 375 0 0 0 0 0 0 0
## 376 0 0 0 0 0 0 0
## 377 0 0 0 0 0 0 0
## 378 0 0 0 0 0 0 0
## 379 0 0 0 0 0 0 0
## 380 0 0 0 0 0 0 0
## 381 0 0 0 0 0 0 0
## 382 0 0 0 0 0 0 0
## 383 0 0 0 0 0 0 0
## 384 0 0 0 0 0 0 0
## 385 0 0 0 0 0 0 0
## 386 0 0 0 0 0 0 0
## 387 0 0 0 0 0 0 0
## 388 0 0 0 0 0 0 0
## 389 0 0 0 0 0 0 0
## 390 0 0 0 0 0 0 0
## 391 0 0 0 0 0 0 0
## 392 0 0 0 0 0 0 0
## 393 0 0 0 0 0 0 0
## takedownl.X2 hammerl.X1 hammerl.X2 Cross2l.X1 Knee2l.X1 Elbow2l.X1
## 364 0 0 0 0 0 0
## 365 0 0 0 0 0 0
## 366 0 0 0 0 0 0
## 367 0 0 0 0 0 0
## 368 0 0 0 0 0 0
## 369 0 0 0 1 0 0
## 370 0 0 0 0 0 0
## 371 0 0 0 0 0 0
## 372 0 0 0 0 0 0
## 373 0 0 0 0 0 0
## 374 0 0 0 0 0 0
## 375 0 0 0 0 0 0
## 376 0 0 0 0 0 0
## 377 0 0 0 0 0 0
## 378 0 0 0 0 0 0
## 379 0 0 0 0 0 0
## 380 0 0 0 0 0 0
## 381 0 0 0 0 0 0
## 382 0 0 0 0 0 0
## 383 0 0 0 0 0 0
## 384 0 0 0 0 0 0
## 385 0 0 0 1 0 0
## 386 0 0 0 0 0 0
## 387 0 0 0 0 0 0
## 388 0 0 0 0 0 0
## 389 0 0 0 0 0 0
## 390 0 0 0 0 0 0
## 391 0 0 0 1 0 0
## 392 0 0 0 0 0 0
## 393 0 0 0 0 0 0
## Hook2l.X1 Jab2l.X1 Kick2l.X1 Cross2l.X2 Knee2l.X2 Elbow2l.X2 Hook2l.X2
## 364 0 0 0 0 0 0 0
## 365 0 0 0 0 0 0 0
## 366 0 0 0 0 0 0 0
## 367 0 0 0 0 0 0 0
## 368 0 1 0 0 0 0 0
## 369 0 0 0 0 0 0 0
## 370 0 0 0 0 0 0 0
## 371 0 0 0 0 0 0 0
## 372 0 0 0 0 0 0 0
## 373 0 0 0 0 0 0 0
## 374 0 0 0 0 0 0 0
## 375 0 0 0 0 0 0 0
## 376 0 0 0 0 0 0 0
## 377 0 0 0 0 0 0 0
## 378 0 0 0 0 0 0 0
## 379 0 0 0 0 0 0 0
## 380 0 0 0 0 0 0 0
## 381 0 0 0 0 0 0 0
## 382 0 0 0 0 0 0 0
## 383 0 0 0 0 0 0 0
## 384 0 0 0 0 0 0 0
## 385 0 0 0 0 0 0 0
## 386 0 0 0 0 0 0 0
## 387 0 0 0 0 0 0 0
## 388 0 0 0 0 0 0 0
## 389 0 0 0 0 0 0 0
## 390 0 0 0 0 0 0 0
## 391 0 0 0 0 0 0 0
## 392 0 0 0 0 0 0 0
## 393 0 0 0 0 0 0 0
## Jab2l.X2 Kick2l.X2 upper2l.X1 upper2l.X2 takedown2l.X1 takedown2l.X2
## 364 0 0 0 0 0 0
## 365 0 0 0 0 0 0
## 366 0 0 0 0 0 0
## 367 0 0 0 0 0 0
## 368 0 0 0 0 0 0
## 369 0 0 0 0 0 0
## 370 0 0 0 0 0 0
## 371 0 0 0 0 0 0
## 372 0 0 0 0 0 0
## 373 0 0 0 0 0 0
## 374 0 0 0 0 0 0
## 375 0 0 0 0 0 0
## 376 0 0 0 0 0 0
## 377 0 0 0 0 0 0
## 378 0 0 0 0 0 0
## 379 0 0 0 0 0 0
## 380 0 0 0 0 0 0
## 381 0 0 0 0 0 0
## 382 0 0 0 0 0 0
## 383 0 0 0 0 0 0
## 384 0 0 0 0 0 0
## 385 0 0 0 0 0 0
## 386 0 0 0 0 0 0
## 387 0 0 0 0 0 0
## 388 0 0 0 0 0 0
## 389 0 0 0 0 0 0
## 390 0 0 0 0 0 0
## 391 0 0 0 0 0 0
## 392 0 0 0 0 0 0
## 393 0 0 0 0 0 0
## hammer2l.X1 hammer2l.X2 Cross3l.X1 Knee3l.X1 Elbow3l.X1 Hook3l.X1 Jab3l.X1
## 364 0 0 0 0 0 0 0
## 365 0 0 0 0 0 0 0
## 366 0 0 0 0 0 0 0
## 367 0 0 0 0 0 0 0
## 368 0 0 0 0 0 0 0
## 369 0 0 0 0 0 0 0
## 370 0 0 0 0 0 0 0
## 371 0 0 0 0 0 0 0
## 372 0 0 0 0 0 0 0
## 373 0 0 0 0 0 0 0
## 374 0 0 0 0 0 0 0
## 375 0 0 0 0 0 0 0
## 376 0 0 0 0 0 0 0
## 377 0 0 0 0 0 0 0
## 378 0 0 0 0 0 0 0
## 379 0 0 0 0 0 0 0
## 380 0 0 0 0 0 0 0
## 381 0 0 0 0 0 0 0
## 382 0 0 0 0 0 0 0
## 383 0 0 0 0 0 0 0
## 384 0 0 0 0 0 0 0
## 385 0 0 0 0 0 0 0
## 386 0 0 0 0 0 0 0
## 387 0 0 0 0 0 0 0
## 388 0 0 0 0 0 0 0
## 389 0 0 0 0 0 0 0
## 390 0 0 0 0 0 0 0
## 391 0 0 0 0 0 0 0
## 392 0 0 0 0 0 0 0
## 393 0 0 0 0 0 0 0
## Kick3l.X1 Cross3l.X2 Knee3l.X2 Elbow3l.X2 Hook3l.X2 Jab3l.X2 Kick3l.X2
## 364 0 0 0 0 0 0 0
## 365 0 0 0 0 0 0 0
## 366 0 0 0 0 0 0 0
## 367 0 0 0 0 0 0 0
## 368 0 0 0 0 0 0 0
## 369 0 0 0 0 0 0 0
## 370 0 0 0 0 0 0 0
## 371 0 0 0 0 0 0 0
## 372 0 0 0 0 0 0 0
## 373 0 0 0 0 0 0 0
## 374 0 0 0 0 0 0 0
## 375 0 0 0 0 0 0 0
## 376 0 0 0 0 0 0 0
## 377 0 0 0 0 0 0 0
## 378 0 0 0 0 0 0 0
## 379 0 0 0 0 0 0 0
## 380 0 0 0 0 0 0 0
## 381 0 0 0 0 0 0 0
## 382 0 0 0 0 0 0 0
## 383 0 0 0 0 0 0 0
## 384 0 0 0 0 0 0 0
## 385 0 0 0 0 0 0 0
## 386 0 0 0 0 0 0 0
## 387 0 0 0 0 0 0 0
## 388 0 0 0 0 0 0 0
## 389 0 0 0 0 0 0 0
## 390 0 0 0 0 0 0 0
## 391 0 0 0 0 0 0 0
## 392 0 0 0 0 0 0 0
## 393 0 0 0 0 0 0 0
## upper3l.X1 upper3l.X2 takedown3l.X1 takedown3l.X2 hammer3l.X1 hammer3l.X2
## 364 0 0 0 0 0 0
## 365 0 0 0 0 0 0
## 366 0 0 0 0 0 0
## 367 0 0 0 0 0 0
## 368 0 0 0 0 0 0
## 369 0 0 0 0 0 0
## 370 0 0 0 0 0 0
## 371 0 0 0 0 0 0
## 372 0 0 0 0 0 0
## 373 0 0 0 0 0 0
## 374 0 0 0 0 0 0
## 375 0 0 0 0 0 0
## 376 0 0 0 0 0 0
## 377 0 0 0 0 0 0
## 378 0 0 0 0 0 0
## 379 0 0 0 0 0 0
## 380 0 0 0 0 0 0
## 381 0 0 0 0 0 0
## 382 0 0 0 0 0 0
## 383 0 0 0 0 0 0
## 384 0 0 0 0 0 0
## 385 0 0 0 0 0 0
## 386 0 0 0 0 0 0
## 387 0 0 0 0 0 0
## 388 0 0 0 0 0 0
## 389 0 0 0 0 0 0
## 390 0 0 0 0 0 0
## 391 0 0 0 0 0 0
## 392 0 0 0 0 0 0
## 393 0 0 0 0 0 0
## Crossm.X1 Kneem.X1 Elbowm.X1 Hookm.X1 Jabm.X1 Kickm.X1 Crossm.X2 Kneem.X2
## 364 0 0 0 0 1 0 0 0
## 365 1 0 0 0 0 0 0 0
## 366 1 0 0 0 0 0 0 0
## 367 0 0 0 0 0 1 0 0
## 368 1 0 0 0 0 0 1 0
## 369 0 0 0 0 1 0 0 0
## 370 1 0 0 0 0 0 0 0
## 371 0 0 0 0 0 1 0 0
## 372 0 0 0 0 0 0 0 0
## 373 0 0 0 0 0 0 0 0
## 374 0 0 0 0 0 0 0 0
## 375 0 0 0 0 0 0 0 0
## 376 0 0 0 0 1 0 0 0
## 377 0 0 0 0 0 0 0 0
## 378 1 0 0 0 0 0 0 0
## 379 1 0 0 0 0 0 0 0
## 380 0 0 0 0 0 0 0 0
## 381 0 0 0 0 0 0 1 0
## 382 0 0 0 0 1 0 0 0
## 383 0 0 0 0 0 0 0 0
## 384 0 0 0 0 0 0 0 0
## 385 0 0 0 0 1 0 0 0
## 386 0 0 0 0 0 0 0 0
## 387 0 0 0 0 0 0 0 0
## 388 0 0 0 0 0 0 0 0
## 389 1 0 0 0 0 0 0 0
## 390 0 0 0 0 0 0 0 0
## 391 0 0 0 0 0 0 0 0
## 392 0 0 0 0 0 0 0 0
## 393 0 0 0 0 0 0 0 0
## Elbowm.X2 Hookm.X2 Jabm.X2 Kickm.X2 upperm.X1 upperm.X2 takedownm.X1
## 364 0 0 0 0 0 0 0
## 365 0 0 1 0 0 0 0
## 366 0 0 0 0 0 0 0
## 367 0 0 0 0 0 0 0
## 368 0 0 0 0 0 0 0
## 369 0 0 0 1 0 0 0
## 370 0 0 0 0 0 0 0
## 371 0 0 0 0 0 0 0
## 372 0 0 0 1 0 0 0
## 373 0 0 0 0 0 0 0
## 374 0 0 0 1 0 0 0
## 375 0 0 0 0 0 0 0
## 376 0 0 0 0 0 0 0
## 377 0 0 0 0 0 0 0
## 378 0 0 0 0 0 0 0
## 379 0 0 0 0 0 0 0
## 380 0 0 1 0 0 0 0
## 381 0 0 0 0 0 0 0
## 382 0 0 0 0 0 0 0
## 383 0 0 0 0 1 0 0
## 384 0 0 1 0 0 0 0
## 385 0 0 0 0 0 0 0
## 386 0 0 0 0 0 0 0
## 387 0 0 0 0 0 0 0
## 388 0 0 0 0 0 0 0
## 389 0 0 0 0 0 0 0
## 390 0 0 0 0 0 0 0
## 391 0 0 0 0 0 0 0
## 392 0 0 0 0 0 0 0
## 393 0 0 0 0 0 0 0
## takedownm.X2 hammerm.X1 hammerm.X2 Cross2m.X1 Knee2m.X1 Elbow2m.X1
## 364 0 0 0 0 0 0
## 365 0 0 0 0 0 0
## 366 0 0 0 0 0 0
## 367 0 0 0 0 0 0
## 368 0 0 0 0 0 0
## 369 0 0 0 0 0 0
## 370 0 0 0 0 0 0
## 371 0 0 0 0 0 0
## 372 0 0 0 0 0 0
## 373 0 0 0 0 0 0
## 374 0 0 0 0 0 0
## 375 0 0 0 1 0 0
## 376 0 0 0 1 0 0
## 377 0 0 0 0 0 0
## 378 0 0 0 0 0 0
## 379 0 0 0 0 0 0
## 380 0 0 0 0 0 0
## 381 0 0 0 0 0 0
## 382 0 0 0 1 0 0
## 383 0 0 0 0 0 0
## 384 0 0 0 1 0 0
## 385 0 0 0 0 0 0
## 386 0 0 0 0 0 0
## 387 0 0 0 0 0 0
## 388 0 0 0 0 0 0
## 389 0 0 0 0 0 0
## 390 0 0 0 0 0 0
## 391 0 0 0 0 0 0
## 392 0 0 0 0 0 0
## 393 0 0 0 0 0 0
## Hook2m.X1 Jab2m.X1 Kick2m.X1 Cross2m.X2 Knee2m.X2 Elbow2m.X2 Hook2m.X2
## 364 0 0 0 0 0 0 0
## 365 0 0 0 0 0 0 0
## 366 0 0 0 0 0 0 0
## 367 0 0 0 0 0 0 0
## 368 0 0 0 0 0 0 0
## 369 0 0 0 0 0 0 0
## 370 0 1 0 0 0 0 0
## 371 0 0 0 0 0 0 0
## 372 0 0 0 0 0 0 0
## 373 0 0 0 0 0 0 0
## 374 0 0 0 0 0 0 0
## 375 0 0 0 0 0 0 0
## 376 0 0 0 0 0 0 0
## 377 0 0 0 0 0 0 0
## 378 0 0 0 0 0 0 0
## 379 0 0 0 0 0 0 0
## 380 0 0 0 0 0 0 0
## 381 0 0 0 0 0 0 0
## 382 0 0 0 0 0 0 0
## 383 0 0 0 0 0 0 0
## 384 0 0 0 0 0 0 0
## 385 0 0 0 0 0 0 0
## 386 0 0 0 0 0 0 0
## 387 0 0 0 0 0 0 0
## 388 0 0 0 0 0 0 0
## 389 0 0 0 0 0 0 0
## 390 0 0 0 0 0 0 0
## 391 0 0 0 0 0 0 0
## 392 0 0 0 0 0 0 0
## 393 0 0 0 0 0 0 0
## Jab2m.X2 Kick2m.X2 upper2m.X1 upper2m.X2 takedown2m.X1 takedown2m.X2
## 364 0 0 0 0 0 0
## 365 0 0 0 0 0 0
## 366 0 0 0 0 0 0
## 367 0 0 0 0 0 0
## 368 0 0 0 0 0 0
## 369 0 0 0 0 0 0
## 370 0 0 0 0 0 0
## 371 0 0 0 0 0 0
## 372 1 0 0 0 0 0
## 373 0 0 0 0 0 0
## 374 0 0 0 0 0 0
## 375 0 0 0 0 0 0
## 376 0 0 0 0 0 0
## 377 0 0 0 0 0 0
## 378 0 0 1 0 0 0
## 379 0 0 0 0 0 0
## 380 0 0 0 0 0 0
## 381 0 0 0 0 0 0
## 382 1 0 0 0 0 0
## 383 0 0 0 0 0 0
## 384 0 0 0 0 0 0
## 385 0 0 0 0 0 0
## 386 0 0 0 0 0 0
## 387 0 0 0 0 0 0
## 388 0 0 0 0 0 0
## 389 0 0 0 0 0 0
## 390 0 0 0 0 0 0
## 391 0 0 0 0 0 0
## 392 0 0 0 0 0 0
## 393 0 0 0 0 0 0
## hammer2m.X1 hammer2m.X2 Cross3m.X1 Knee3m.X1 Elbow3m.X1 Hook3m.X1 Jab3m.X1
## 364 0 0 0 0 0 0 0
## 365 0 0 0 0 0 0 0
## 366 0 0 0 0 0 0 0
## 367 0 0 0 0 0 0 0
## 368 0 0 0 0 0 0 0
## 369 0 0 0 0 0 0 0
## 370 0 0 1 0 0 0 0
## 371 0 0 0 0 0 0 0
## 372 0 0 0 0 0 0 0
## 373 0 0 0 0 0 0 0
## 374 0 0 0 0 0 0 0
## 375 0 0 0 0 0 0 0
## 376 0 0 0 0 0 0 0
## 377 0 0 0 0 0 0 0
## 378 0 0 0 0 0 0 0
## 379 0 0 0 0 0 0 0
## 380 0 0 0 0 0 0 0
## 381 0 0 0 0 0 0 0
## 382 0 0 0 0 0 0 0
## 383 0 0 0 0 0 0 0
## 384 0 0 0 0 0 0 0
## 385 0 0 0 0 0 0 0
## 386 0 0 0 0 0 0 0
## 387 0 0 0 0 0 0 0
## 388 0 0 0 0 0 0 0
## 389 0 0 0 0 0 0 0
## 390 0 0 0 0 0 0 0
## 391 0 0 0 0 0 0 0
## 392 0 0 0 0 0 0 0
## 393 0 0 0 0 0 0 0
## Kick3m.X1 Cross3m.X2 Knee3m.X2 Elbow3m.X2 Hook3m.X2 Jab3m.X2 Kick3m.X2
## 364 0 0 0 0 0 0 0
## 365 0 0 0 0 0 0 0
## 366 0 0 0 0 0 0 0
## 367 0 0 0 0 0 0 0
## 368 0 0 0 0 0 0 0
## 369 0 0 0 0 0 0 0
## 370 0 0 0 0 0 0 0
## 371 0 0 0 0 0 0 0
## 372 0 0 0 0 0 0 0
## 373 0 0 0 0 0 0 0
## 374 0 0 0 0 0 0 0
## 375 0 0 0 0 0 0 0
## 376 0 0 0 0 0 0 0
## 377 0 0 0 0 0 0 0
## 378 0 0 0 0 0 0 0
## 379 0 0 0 0 0 0 0
## 380 0 0 0 0 0 0 0
## 381 0 0 0 0 0 0 0
## 382 0 0 0 0 0 0 0
## 383 0 0 0 0 0 0 0
## 384 0 0 0 0 0 0 0
## 385 0 0 0 0 0 0 0
## 386 0 0 0 0 0 0 0
## 387 0 0 0 0 0 0 0
## 388 0 0 0 0 0 0 0
## 389 0 0 0 0 0 0 0
## 390 0 0 0 0 0 0 0
## 391 0 0 0 0 0 0 0
## 392 0 0 0 0 0 0 0
## 393 0 0 0 0 0 0 0
## upper3m.X1 upper3m.X2 takedown3m.X1 takedown3m.X2 hammer3m.X1 hammer3m.X2
## 364 0 0 0 0 0 0
## 365 0 0 0 0 0 0
## 366 0 0 0 0 0 0
## 367 0 0 0 0 0 0
## 368 0 0 0 0 0 0
## 369 0 0 0 0 0 0
## 370 0 0 0 0 0 0
## 371 0 0 0 0 0 0
## 372 0 0 0 0 0 0
## 373 0 0 0 0 0 0
## 374 0 0 0 0 0 0
## 375 0 0 0 0 0 0
## 376 0 0 0 0 0 0
## 377 0 0 0 0 0 0
## 378 0 0 0 0 0 0
## 379 0 0 0 0 0 0
## 380 0 0 0 0 0 0
## 381 0 0 0 0 0 0
## 382 0 0 0 0 0 0
## 383 0 0 0 0 0 0
## 384 0 0 0 0 0 0
## 385 0 0 0 0 0 0
## 386 0 0 0 0 0 0
## 387 0 0 0 0 0 0
## 388 0 0 0 0 0 0
## 389 0 0 0 0 0 0
## 390 0 0 0 0 0 0
## 391 0 0 0 0 0 0
## 392 0 0 0 0 0 0
## 393 0 0 0 0 0 0
## Crossr.X1 Kneer.X1 Elbowr.X1 Hookr.X1 Jabr.X1 Kickr.X1 Crossr.X2 Kneer.X2
## 364 0 0 0 0 0 0 0 0
## 365 0 0 0 0 0 0 0 0
## 366 0 0 0 0 0 0 0 0
## 367 0 0 0 0 0 0 0 0
## 368 0 0 0 0 0 0 0 0
## 369 0 0 0 0 0 0 0 0
## 370 0 0 0 0 0 0 0 0
## 371 0 0 0 0 0 0 0 0
## 372 0 0 0 0 0 0 1 0
## 373 0 0 0 0 0 0 0 0
## 374 0 0 0 0 0 0 0 0
## 375 0 0 0 0 0 0 0 0
## 376 0 0 0 0 0 0 0 0
## 377 0 0 0 0 0 0 0 0
## 378 0 0 0 0 0 0 0 0
## 379 0 0 0 0 0 0 0 0
## 380 0 0 0 0 0 0 0 0
## 381 0 0 0 0 0 0 1 0
## 382 0 0 0 0 0 0 0 0
## 383 0 0 0 0 0 0 0 0
## 384 0 0 0 0 0 0 0 0
## 385 0 0 0 0 0 0 0 0
## 386 0 0 0 0 0 0 0 0
## 387 0 0 0 0 0 0 1 0
## 388 0 0 0 0 0 0 0 0
## 389 0 0 0 0 0 0 0 0
## 390 0 0 0 0 0 0 1 0
## 391 0 0 0 0 0 0 0 0
## 392 0 0 0 0 0 0 0 0
## 393 0 0 0 0 0 0 0 0
## Elbowr.X2 Hookr.X2 Jabr.X2 Kickr.X2 upperr.X1 upperr.X2 takedownr.X1
## 364 0 0 0 0 0 0 0
## 365 0 0 0 0 0 0 0
## 366 0 0 0 0 0 0 0
## 367 0 0 0 0 0 0 0
## 368 0 0 0 0 0 0 0
## 369 0 0 0 0 0 0 0
## 370 0 0 0 0 0 0 0
## 371 0 0 0 0 0 0 0
## 372 0 0 0 0 0 0 0
## 373 0 0 0 0 0 0 0
## 374 0 0 0 0 0 0 0
## 375 0 0 1 0 0 0 0
## 376 0 0 0 0 0 0 0
## 377 0 0 1 0 0 0 0
## 378 0 0 0 0 0 0 0
## 379 0 0 0 0 0 0 0
## 380 0 0 1 0 0 0 0
## 381 0 0 0 0 0 0 0
## 382 0 0 0 0 0 0 0
## 383 0 0 0 0 0 0 0
## 384 0 0 1 0 0 0 0
## 385 0 0 0 0 0 0 0
## 386 0 0 0 0 0 0 0
## 387 0 0 0 0 0 0 0
## 388 0 0 0 0 0 0 0
## 389 0 0 0 0 0 0 0
## 390 0 0 0 0 0 0 0
## 391 0 0 1 0 0 0 0
## 392 0 0 1 0 0 0 0
## 393 0 0 0 0 0 0 0
## takedownr.X2 hammerr.X1 hammerr.X2 Cross2r.X1 Knee2r.X1 Elbow2r.X1
## 364 0 0 0 0 0 0
## 365 0 0 0 0 0 0
## 366 0 0 0 0 0 0
## 367 0 0 0 0 0 0
## 368 0 0 0 0 0 0
## 369 0 0 0 0 0 0
## 370 0 0 0 0 0 0
## 371 0 0 0 0 0 0
## 372 0 0 0 0 0 0
## 373 0 0 0 0 0 0
## 374 0 0 0 0 0 0
## 375 0 0 0 0 0 0
## 376 0 0 0 0 0 0
## 377 0 0 0 0 0 0
## 378 0 0 0 0 0 0
## 379 0 0 0 0 0 0
## 380 0 0 0 0 0 0
## 381 0 0 0 0 0 0
## 382 0 0 0 0 0 0
## 383 0 0 0 0 0 0
## 384 0 0 0 0 0 0
## 385 0 0 0 0 0 0
## 386 0 0 0 0 0 0
## 387 0 0 0 0 0 0
## 388 0 0 0 0 0 0
## 389 0 0 0 0 0 0
## 390 0 0 0 0 0 0
## 391 0 0 0 0 0 0
## 392 0 0 0 0 0 0
## 393 0 0 0 0 0 0
## Hook2r.X1 Jab2r.X1 Kick2r.X1 Cross2r.X2 Knee2r.X2 Elbow2r.X2 Hook2r.X2
## 364 0 0 0 0 0 0 0
## 365 0 0 0 0 0 0 0
## 366 0 0 0 0 0 0 0
## 367 0 0 0 0 0 0 0
## 368 0 0 0 0 0 0 0
## 369 0 0 0 1 0 0 0
## 370 0 0 0 0 0 0 0
## 371 0 0 0 0 0 0 0
## 372 0 0 0 0 0 0 0
## 373 0 0 0 0 0 0 0
## 374 0 0 0 0 0 0 0
## 375 0 0 0 0 0 0 0
## 376 0 0 0 0 0 0 0
## 377 0 0 0 0 0 0 0
## 378 0 0 0 0 0 0 0
## 379 0 0 0 0 0 0 0
## 380 0 0 0 0 0 0 0
## 381 0 0 0 0 0 0 0
## 382 0 0 0 0 0 0 0
## 383 0 0 0 0 0 0 0
## 384 0 0 0 0 0 0 0
## 385 0 0 0 1 0 0 0
## 386 0 0 0 0 0 0 0
## 387 0 0 0 0 0 0 0
## 388 0 0 0 0 0 0 0
## 389 0 0 0 0 0 0 0
## 390 0 0 0 0 0 0 0
## 391 0 0 0 1 0 0 0
## 392 0 0 0 0 0 0 0
## 393 0 0 0 0 0 0 0
## Jab2r.X2 Kick2r.X2 upper2r.X1 upper2r.X2 takedown2r.X1 takedown2r.X2
## 364 0 0 0 0 0 0
## 365 0 0 0 0 0 0
## 366 0 0 0 0 0 0
## 367 0 0 0 0 0 0
## 368 1 0 0 0 0 0
## 369 0 0 0 0 0 0
## 370 0 0 0 0 0 0
## 371 0 0 0 0 0 0
## 372 0 0 0 0 0 0
## 373 0 0 0 0 0 0
## 374 0 0 0 0 0 0
## 375 0 0 0 0 0 0
## 376 0 0 0 0 0 0
## 377 0 0 0 0 0 0
## 378 0 0 0 0 0 0
## 379 0 0 0 0 0 0
## 380 0 0 0 0 0 0
## 381 0 0 0 0 0 0
## 382 0 0 0 0 0 0
## 383 0 0 0 0 0 0
## 384 0 0 0 0 0 0
## 385 0 0 0 0 0 0
## 386 0 0 0 0 0 0
## 387 0 0 0 0 0 0
## 388 0 0 0 0 0 0
## 389 0 0 0 0 0 0
## 390 0 0 0 0 0 0
## 391 0 0 0 0 0 0
## 392 0 0 0 0 0 0
## 393 0 0 0 0 0 0
## hammer2r.X1 hammer2r.X2 Cross3r.X1 Knee3r.X1 Elbow3r.X1 Hook3r.X1 Jab3r.X1
## 364 0 0 0 0 0 0 0
## 365 0 0 0 0 0 0 0
## 366 0 0 0 0 0 0 0
## 367 0 0 0 0 0 0 0
## 368 0 0 0 0 0 0 0
## 369 0 0 0 0 0 0 0
## 370 0 0 0 0 0 0 0
## 371 0 0 0 0 0 0 0
## 372 0 0 0 0 0 0 0
## 373 0 0 0 0 0 0 0
## 374 0 0 0 0 0 0 0
## 375 0 0 0 0 0 0 0
## 376 0 0 0 0 0 0 0
## 377 0 0 0 0 0 0 0
## 378 0 0 0 0 0 0 0
## 379 0 0 0 0 0 0 0
## 380 0 0 0 0 0 0 0
## 381 0 0 0 0 0 0 0
## 382 0 0 0 0 0 0 0
## 383 0 0 0 0 0 0 0
## 384 0 0 0 0 0 0 0
## 385 0 0 0 0 0 0 0
## 386 0 0 0 0 0 0 0
## 387 0 0 0 0 0 0 0
## 388 0 0 0 0 0 0 0
## 389 0 0 0 0 0 0 0
## 390 0 0 0 0 0 0 0
## 391 0 0 0 0 0 0 0
## 392 0 0 0 0 0 0 0
## 393 0 0 0 0 0 0 0
## Kick3r.X1 Cross3r.X2 Knee3r.X2 Elbow3r.X2 Hook3r.X2 Jab3r.X2 Kick3r.X2
## 364 0 0 0 0 0 0 0
## 365 0 0 0 0 0 0 0
## 366 0 0 0 0 0 0 0
## 367 0 0 0 0 0 0 0
## 368 0 0 0 0 0 0 0
## 369 0 0 0 0 0 0 0
## 370 0 0 0 0 0 0 0
## 371 0 0 0 0 0 0 0
## 372 0 0 0 0 0 0 0
## 373 0 0 0 0 0 0 0
## 374 0 0 0 0 0 0 0
## 375 0 0 0 0 0 0 0
## 376 0 0 0 0 0 0 0
## 377 0 0 0 0 0 0 0
## 378 0 0 0 0 0 0 0
## 379 0 0 0 0 0 0 0
## 380 0 0 0 0 0 0 0
## 381 0 0 0 0 0 0 0
## 382 0 0 0 0 0 0 0
## 383 0 0 0 0 0 0 0
## 384 0 0 0 0 0 0 0
## 385 0 0 0 0 0 0 0
## 386 0 0 0 0 0 0 0
## 387 0 0 0 0 0 0 0
## 388 0 0 0 0 0 0 0
## 389 0 0 0 0 0 0 0
## 390 0 0 0 0 0 0 0
## 391 0 0 0 0 0 0 0
## 392 0 0 0 0 0 0 0
## 393 0 0 0 0 0 0 0
## upper3r.X1 upper3r.X2 takedown3r.X1 takedown3r.X2 hammer3r.X1 hammer3r.X2
## 364 0 0 0 0 0 0
## 365 0 0 0 0 0 0
## 366 0 0 0 0 0 0
## 367 0 0 0 0 0 0
## 368 0 0 0 0 0 0
## 369 0 0 0 0 0 0
## 370 0 0 0 0 0 0
## 371 0 0 0 0 0 0
## 372 0 0 0 0 0 0
## 373 0 0 0 0 0 0
## 374 0 0 0 0 0 0
## 375 0 0 0 0 0 0
## 376 0 0 0 0 0 0
## 377 0 0 0 0 0 0
## 378 0 0 0 0 0 0
## 379 0 0 0 0 0 0
## 380 0 0 0 0 0 0
## 381 0 0 0 0 0 0
## 382 0 0 0 0 0 0
## 383 0 0 0 0 0 0
## 384 0 0 0 0 0 0
## 385 0 0 0 0 0 0
## 386 0 0 0 0 0 0
## 387 0 0 0 0 0 0
## 388 0 0 0 0 0 0
## 389 0 0 0 0 0 0
## 390 0 0 0 0 0 0
## 391 0 0 0 0 0 0
## 392 0 0 0 0 0 0
## 393 0 0 0 0 0 0
This next section creates the cumulative actions of hits landed,missed, or received for each second into the round for each of the three table splits by opponent, since only first round of various fights extracted and just created above.
Table4 <- mutate(Table1, cmTotHitsR.X1=cumsum(TotReceivedX1),
cmTotHitsL.X1=cumsum(TotLandsX1),
cmTotHitsM.X1=cumsum(TotMissedX1),
cmTotHitsR.X2=cumsum(TotReceivedX2),
cmTotHitsL.X2=cumsum(TotLandsX2),
cmTotHitsM.X2=cumsum(TotMissedX2))
Table5 <- mutate(Table2, cmTotHitsR.X1=cumsum(TotReceivedX1),
cmTotHitsL.X1=cumsum(TotLandsX1),
cmTotHitsM.X1=cumsum(TotMissedX1),
cmTotHitsR.X2=cumsum(TotReceivedX2),
cmTotHitsL.X2=cumsum(TotLandsX2),
cmTotHitsM.X2=cumsum(TotMissedX2))
Table6 <- mutate(Table3, cmTotHitsR.X1=cumsum(TotReceivedX1),
cmTotHitsL.X1=cumsum(TotLandsX1),
cmTotHitsM.X1=cumsum(TotMissedX1),
cmTotHitsR.X2=cumsum(TotReceivedX2),
cmTotHitsL.X2=cumsum(TotLandsX2),
cmTotHitsM.X2=cumsum(TotMissedX2))
Table6b <- mutate(Table3b, cmTotHitsR.X1=cumsum(TotReceivedX1),
cmTotHitsL.X1=cumsum(TotLandsX1),
cmTotHitsM.X1=cumsum(TotMissedX1),
cmTotHitsR.X2=cumsum(TotReceivedX2),
cmTotHitsL.X2=cumsum(TotLandsX2),
cmTotHitsM.X2=cumsum(TotMissedX2))
This combines the three table splits with cumulative sum of actions for each unique round or fighter.
Table7 <- rbind(Table4,Table5,Table6,Table6b)
dim(Table4)[1]+dim(Table5)[1]+dim(Table6)[1]+dim(Table6b)[1]==dim(Added)[1]
## [1] TRUE
All observations are accounted for in the subsets of tables since the sum of all observations in each subset table equals the number of observations in the table of all data with action notes for either of X1 or X2.
colnames(Table7)
## [1] "Round" "SecondsIntoRound"
## [3] "lastAction" "SecondsLastRoundAction"
## [5] "cmTotHitsR.X1" "cmTotHitsL.X1"
## [7] "cmTotHitsM.X1" "TotLandsX1"
## [9] "TotMissedX1" "TotReceivedX1"
## [11] "cmTotHitsR.X2" "cmTotHitsL.X2"
## [13] "cmTotHitsM.X2" "TotLandsX2"
## [15] "TotMissedX2" "TotReceivedX2"
## [17] "Time" "FighterActionReactions.X1"
## [19] "FightersActionsReactions.X2" "Notes"
## [21] "Crossl.X1" "Kneel.X1"
## [23] "Elbowl.X1" "Hookl.X1"
## [25] "Jabl.X1" "Kickl.X1"
## [27] "Crossl.X2" "Kneel.X2"
## [29] "Elbowl.X2" "Hookl.X2"
## [31] "Jabl.X2" "Kickl.X2"
## [33] "upperl.X1" "upperl.X2"
## [35] "takedownl.X1" "takedownl.X2"
## [37] "hammerl.X1" "hammerl.X2"
## [39] "Cross2l.X1" "Knee2l.X1"
## [41] "Elbow2l.X1" "Hook2l.X1"
## [43] "Jab2l.X1" "Kick2l.X1"
## [45] "Cross2l.X2" "Knee2l.X2"
## [47] "Elbow2l.X2" "Hook2l.X2"
## [49] "Jab2l.X2" "Kick2l.X2"
## [51] "upper2l.X1" "upper2l.X2"
## [53] "takedown2l.X1" "takedown2l.X2"
## [55] "hammer2l.X1" "hammer2l.X2"
## [57] "Cross3l.X1" "Knee3l.X1"
## [59] "Elbow3l.X1" "Hook3l.X1"
## [61] "Jab3l.X1" "Kick3l.X1"
## [63] "Cross3l.X2" "Knee3l.X2"
## [65] "Elbow3l.X2" "Hook3l.X2"
## [67] "Jab3l.X2" "Kick3l.X2"
## [69] "upper3l.X1" "upper3l.X2"
## [71] "takedown3l.X1" "takedown3l.X2"
## [73] "hammer3l.X1" "hammer3l.X2"
## [75] "Crossm.X1" "Kneem.X1"
## [77] "Elbowm.X1" "Hookm.X1"
## [79] "Jabm.X1" "Kickm.X1"
## [81] "Crossm.X2" "Kneem.X2"
## [83] "Elbowm.X2" "Hookm.X2"
## [85] "Jabm.X2" "Kickm.X2"
## [87] "upperm.X1" "upperm.X2"
## [89] "takedownm.X1" "takedownm.X2"
## [91] "hammerm.X1" "hammerm.X2"
## [93] "Cross2m.X1" "Knee2m.X1"
## [95] "Elbow2m.X1" "Hook2m.X1"
## [97] "Jab2m.X1" "Kick2m.X1"
## [99] "Cross2m.X2" "Knee2m.X2"
## [101] "Elbow2m.X2" "Hook2m.X2"
## [103] "Jab2m.X2" "Kick2m.X2"
## [105] "upper2m.X1" "upper2m.X2"
## [107] "takedown2m.X1" "takedown2m.X2"
## [109] "hammer2m.X1" "hammer2m.X2"
## [111] "Cross3m.X1" "Knee3m.X1"
## [113] "Elbow3m.X1" "Hook3m.X1"
## [115] "Jab3m.X1" "Kick3m.X1"
## [117] "Cross3m.X2" "Knee3m.X2"
## [119] "Elbow3m.X2" "Hook3m.X2"
## [121] "Jab3m.X2" "Kick3m.X2"
## [123] "upper3m.X1" "upper3m.X2"
## [125] "takedown3m.X1" "takedown3m.X2"
## [127] "hammer3m.X1" "hammer3m.X2"
## [129] "Crossr.X1" "Kneer.X1"
## [131] "Elbowr.X1" "Hookr.X1"
## [133] "Jabr.X1" "Kickr.X1"
## [135] "Crossr.X2" "Kneer.X2"
## [137] "Elbowr.X2" "Hookr.X2"
## [139] "Jabr.X2" "Kickr.X2"
## [141] "upperr.X1" "upperr.X2"
## [143] "takedownr.X1" "takedownr.X2"
## [145] "hammerr.X1" "hammerr.X2"
## [147] "Cross2r.X1" "Knee2r.X1"
## [149] "Elbow2r.X1" "Hook2r.X1"
## [151] "Jab2r.X1" "Kick2r.X1"
## [153] "Cross2r.X2" "Knee2r.X2"
## [155] "Elbow2r.X2" "Hook2r.X2"
## [157] "Jab2r.X2" "Kick2r.X2"
## [159] "upper2r.X1" "upper2r.X2"
## [161] "takedown2r.X1" "takedown2r.X2"
## [163] "hammer2r.X1" "hammer2r.X2"
## [165] "Cross3r.X1" "Knee3r.X1"
## [167] "Elbow3r.X1" "Hook3r.X1"
## [169] "Jab3r.X1" "Kick3r.X1"
## [171] "Cross3r.X2" "Knee3r.X2"
## [173] "Elbow3r.X2" "Hook3r.X2"
## [175] "Jab3r.X2" "Kick3r.X2"
## [177] "upper3r.X1" "upper3r.X2"
## [179] "takedown3r.X1" "takedown3r.X2"
## [181] "hammer3r.X1" "hammer3r.X2"
The following rearranges the table columns by actions landed, missed, and received into a new table.
landX1 <- c(21:26,33,35,37,39:44,51,53,55,57:62,69,71,73)
landX2 <- c(27:32,34,36,38,45:50,52,54,56,63:68,70,72,74)
missX1 <- c(75:80,87,89,91,93:98,105,107,109,111:116,123,125,127)
missX2 <- c(81:86,88,90,92,99:104,106,108,110,117:122,124,126,128)
recvX1 <- c(129:134,141,143,145,147:152,159,161,163,165:170,177,179,181)
recvX2 <- c(135:140,142,144,146,153:158,160,162,164,171:176,178,180,182)
Table8 <- Table7[,c(1:20,landX1,landX2,missX1,missX2,recvX1,recvX2)]
colnames(Table8)
## [1] "Round" "SecondsIntoRound"
## [3] "lastAction" "SecondsLastRoundAction"
## [5] "cmTotHitsR.X1" "cmTotHitsL.X1"
## [7] "cmTotHitsM.X1" "TotLandsX1"
## [9] "TotMissedX1" "TotReceivedX1"
## [11] "cmTotHitsR.X2" "cmTotHitsL.X2"
## [13] "cmTotHitsM.X2" "TotLandsX2"
## [15] "TotMissedX2" "TotReceivedX2"
## [17] "Time" "FighterActionReactions.X1"
## [19] "FightersActionsReactions.X2" "Notes"
## [21] "Crossl.X1" "Kneel.X1"
## [23] "Elbowl.X1" "Hookl.X1"
## [25] "Jabl.X1" "Kickl.X1"
## [27] "upperl.X1" "takedownl.X1"
## [29] "hammerl.X1" "Cross2l.X1"
## [31] "Knee2l.X1" "Elbow2l.X1"
## [33] "Hook2l.X1" "Jab2l.X1"
## [35] "Kick2l.X1" "upper2l.X1"
## [37] "takedown2l.X1" "hammer2l.X1"
## [39] "Cross3l.X1" "Knee3l.X1"
## [41] "Elbow3l.X1" "Hook3l.X1"
## [43] "Jab3l.X1" "Kick3l.X1"
## [45] "upper3l.X1" "takedown3l.X1"
## [47] "hammer3l.X1" "Crossl.X2"
## [49] "Kneel.X2" "Elbowl.X2"
## [51] "Hookl.X2" "Jabl.X2"
## [53] "Kickl.X2" "upperl.X2"
## [55] "takedownl.X2" "hammerl.X2"
## [57] "Cross2l.X2" "Knee2l.X2"
## [59] "Elbow2l.X2" "Hook2l.X2"
## [61] "Jab2l.X2" "Kick2l.X2"
## [63] "upper2l.X2" "takedown2l.X2"
## [65] "hammer2l.X2" "Cross3l.X2"
## [67] "Knee3l.X2" "Elbow3l.X2"
## [69] "Hook3l.X2" "Jab3l.X2"
## [71] "Kick3l.X2" "upper3l.X2"
## [73] "takedown3l.X2" "hammer3l.X2"
## [75] "Crossm.X1" "Kneem.X1"
## [77] "Elbowm.X1" "Hookm.X1"
## [79] "Jabm.X1" "Kickm.X1"
## [81] "upperm.X1" "takedownm.X1"
## [83] "hammerm.X1" "Cross2m.X1"
## [85] "Knee2m.X1" "Elbow2m.X1"
## [87] "Hook2m.X1" "Jab2m.X1"
## [89] "Kick2m.X1" "upper2m.X1"
## [91] "takedown2m.X1" "hammer2m.X1"
## [93] "Cross3m.X1" "Knee3m.X1"
## [95] "Elbow3m.X1" "Hook3m.X1"
## [97] "Jab3m.X1" "Kick3m.X1"
## [99] "upper3m.X1" "takedown3m.X1"
## [101] "hammer3m.X1" "Crossm.X2"
## [103] "Kneem.X2" "Elbowm.X2"
## [105] "Hookm.X2" "Jabm.X2"
## [107] "Kickm.X2" "upperm.X2"
## [109] "takedownm.X2" "hammerm.X2"
## [111] "Cross2m.X2" "Knee2m.X2"
## [113] "Elbow2m.X2" "Hook2m.X2"
## [115] "Jab2m.X2" "Kick2m.X2"
## [117] "upper2m.X2" "takedown2m.X2"
## [119] "hammer2m.X2" "Cross3m.X2"
## [121] "Knee3m.X2" "Elbow3m.X2"
## [123] "Hook3m.X2" "Jab3m.X2"
## [125] "Kick3m.X2" "upper3m.X2"
## [127] "takedown3m.X2" "hammer3m.X2"
## [129] "Crossr.X1" "Kneer.X1"
## [131] "Elbowr.X1" "Hookr.X1"
## [133] "Jabr.X1" "Kickr.X1"
## [135] "upperr.X1" "takedownr.X1"
## [137] "hammerr.X1" "Cross2r.X1"
## [139] "Knee2r.X1" "Elbow2r.X1"
## [141] "Hook2r.X1" "Jab2r.X1"
## [143] "Kick2r.X1" "upper2r.X1"
## [145] "takedown2r.X1" "hammer2r.X1"
## [147] "Cross3r.X1" "Knee3r.X1"
## [149] "Elbow3r.X1" "Hook3r.X1"
## [151] "Jab3r.X1" "Kick3r.X1"
## [153] "upper3r.X1" "takedown3r.X1"
## [155] "hammer3r.X1" "Crossr.X2"
## [157] "Kneer.X2" "Elbowr.X2"
## [159] "Hookr.X2" "Jabr.X2"
## [161] "Kickr.X2" "upperr.X2"
## [163] "takedownr.X2" "hammerr.X2"
## [165] "Cross2r.X2" "Knee2r.X2"
## [167] "Elbow2r.X2" "Hook2r.X2"
## [169] "Jab2r.X2" "Kick2r.X2"
## [171] "upper2r.X2" "takedown2r.X2"
## [173] "hammer2r.X2" "Cross3r.X2"
## [175] "Knee3r.X2" "Elbow3r.X2"
## [177] "Hook3r.X2" "Jab3r.X2"
## [179] "Kick3r.X2" "upper3r.X2"
## [181] "takedown3r.X2" "hammer3r.X2"
We should now add in the wrestling holds,caught in, breaks hold, and lost hold features for each fighter of X1 or X2 in each instance, not sequence. We already made these fields at the beginning of this script. Lets also add in the muay thai and push kicks for each sequence noting that these are already counted in the ‘kicks’ feature. We will just count them all as attempted action or reaction regardless if it landed or missed opponent. The target was blocked if not landed or ducked. We can account for these changes later in a different script if needed or you could do it yourself and not be critical of my work donations. Aside: mutalate misogynist monsters as a stepping stone instead of small creatures as a message to anybody who gets this nerdy break-down of violent and graphic content. Leave the squirrels, bunnys, guneau pigs, and females alone.
The ‘breaks’,‘caught’,‘hold’, and ‘lost’ are for X1, and the ‘breaksX2’,‘holdX2’,‘caughtX2’, and ‘lostX2’ are for X2 ground or submit type wrestling actions or reactions. For the kicks, ‘mtKicks’ and ‘pushKicks’ are for X1 and ‘mtKicksX2’ and ‘pushKicksX2’ are for X2 actions or reactions. Those will be taken from only the 1st sequence for this fighter because none of the 2nd and 3rd sequences had any push or muay thai kicks from either fighter. The lists to pull from are sq1 for X1 and sq1b for X2.
Lets make a new table from Table8.
Table9 <- Table8
Create the placeholders for each action feature added.
Table9$holdingX1 <- 0
Table9$holdingX2 <- 0
Table9$breaksHoldX1 <- 0
Table9$breaksHoldX2 <- 0
Table9$caughtHoldX1 <- 0
Table9$caughtHoldX2 <- 0
Table9$lostHoldX1 <- 0
Table9$lostHoldX2 <- 0
colnames(Table9)[183:190]
## [1] "holdingX1" "holdingX2" "breaksHoldX1" "breaksHoldX2" "caughtHoldX1"
## [6] "caughtHoldX2" "lostHoldX1" "lostHoldX2"
Table9[hold,"holdingX1"] <- 1
Table9[holdX2,"holdingX2"] <- 1
Table9[breaks,"breaksHoldX1"] <- 1
Table9[breaksX2,"breaksHoldX2"] <- 1
Table9[caught,"caughtHoldX1"] <- 1
Table9[caughtX2,"caughtHoldX2"] <- 1
Table9[lost,"lostHoldX1"] <- 1
Table9[lostX2,"lostHoldX2"] <- 1
Now add in the muay thai, push kicks, and open guard upward kicks to this table.
Table9$muayThaiKickX1 <- 0
Table9$muayThaiKickX2 <- 0
Table9$pushKickX1 <- 0
Table9$pushKickX2 <- 0
Table9$openGuardKickX1 <- 0
Table9$openGuardKickX2 <- 0
Table9[mtKicks,"muayThaiKickX1"] <- 1
Table9[mtKicksX2,"muayThaiKickX2"] <- 1
Table9[pushKicks,"pushKickX1"] <- 1
Table9[pushKicksX2,"pushKickX2"] <- 1
Table9[openPushX1,"openGuardKickX1"] <- 1
Table9[openPushX2,"openGuardKickX2"] <- 1
We should also add in the cumulative count of each instance of holding, lost holds, broken holds, and instances caught in a hold as well as the cumulative counts of muay thai and push kicks attempted by each fighter even though only Germaine has these actions recorded as X2. Since X2 has four different fighters, we need to split the Table 9 into a table of each opponent as we did earlier, get the cumulative counts, then recombine the table splits. We will keep this in mind when we run these features as predictors (only the wrestling features) that only Germaine can be used to predict the target of hit landed by X1 when that time comes.
We already have the break points for each new fighter as X2. So instead of redoing the break points to split data we will use those splits already created. Create the three tables of the separate fighters of X2.
table1_a <- Table9[1:(split1-1),]
table1_b <- Table9[split1:(split2-1),]
table1_c <- Table9[split2:(split3-1),]
table1_d <- Table9[split3:length(Table9$Round),]
dim(table1_a)[1]+dim(table1_b)[1]+dim(table1_c)[1]+dim(table1_d)[1]==dim(Table9)[1]
## [1] TRUE
All observations are accounted for as the number of observations in all four subset tables of Table 9 add up to the total observations in Table 9.
The first fighter (as X2) table.
table1_a$totalHoldsX1 <- cumsum(table1_a$holdingX1)
table1_a$totalHoldsX2 <- cumsum(table1_a$holdingX2)
table1_a$totalLostHoldsX1 <- cumsum(table1_a$lostHoldX1)
table1_a$totalLostHoldsX2 <- cumsum(table1_a$lostHoldX2)
table1_a$totalCaughtHoldsX1 <- cumsum(table1_a$caughtHoldX1)
table1_a$totalCaughtHoldsX2 <- cumsum(table1_a$caughtHoldX2)
table1_a$totalBreakOutHoldsX1 <- cumsum(table1_a$breaksHoldX1)
table1_a$totalBreakOutHoldsX2 <- cumsum(table1_a$breaksHoldX2)
table1_a$totalMuayThaiKicksX1 <- cumsum(table1_a$muayThaiKickX1)
table1_a$totalMuayThaiKicksX2 <- cumsum(table1_a$muayThaiKickX2)
table1_a$totalPushKicksX1 <- cumsum(table1_a$pushKickX1)
table1_a$totalPushKicksX2 <- cumsum(table1_a$pushKickX2)
table1_a$totalopenguardKicksX1 <- cumsum(table1_a$openGuardKickX1)
table1_a$totalopenguardKicksX2 <- cumsum(table1_a$openGuardKickX2)
tail(table1_a[,197:210],10)
## totalHoldsX1 totalHoldsX2 totalLostHoldsX1 totalLostHoldsX2
## 222 81 139 7 7
## 223 81 140 7 7
## 224 81 141 7 7
## 225 81 142 7 7
## 226 81 143 7 7
## 227 81 144 7 7
## 228 81 145 7 7
## 229 81 146 7 7
## 230 81 147 7 7
## 231 81 148 7 7
## totalCaughtHoldsX1 totalCaughtHoldsX2 totalBreakOutHoldsX1
## 222 137 78 9
## 223 138 78 9
## 224 139 78 9
## 225 140 78 9
## 226 141 78 9
## 227 142 78 9
## 228 143 78 9
## 229 144 78 9
## 230 145 78 9
## 231 146 78 9
## totalBreakOutHoldsX2 totalMuayThaiKicksX1 totalMuayThaiKicksX2
## 222 10 5 4
## 223 10 5 4
## 224 10 5 4
## 225 10 5 4
## 226 10 5 4
## 227 10 5 4
## 228 10 5 4
## 229 10 5 4
## 230 10 5 4
## 231 10 5 4
## totalPushKicksX1 totalPushKicksX2 totalopenguardKicksX1
## 222 1 1 0
## 223 1 1 0
## 224 1 1 0
## 225 1 1 0
## 226 1 1 0
## 227 1 1 0
## 228 1 1 0
## 229 1 1 0
## 230 1 1 0
## 231 1 1 0
## totalopenguardKicksX2
## 222 6
## 223 6
## 224 6
## 225 6
## 226 6
## 227 6
## 228 6
## 229 6
## 230 6
## 231 6
The second fighter (as X2) table.
table1_b$totalHoldsX1 <- cumsum(table1_b$holdingX1)
table1_b$totalHoldsX2 <- cumsum(table1_b$holdingX2)
table1_b$totalLostHoldsX1 <- cumsum(table1_b$lostHoldX1)
table1_b$totalLostHoldsX2 <- cumsum(table1_b$lostHoldX2)
table1_b$totalCaughtHoldsX1 <- cumsum(table1_b$caughtHoldX1)
table1_b$totalCaughtHoldsX2 <- cumsum(table1_b$caughtHoldX2)
table1_b$totalBreakOutHoldsX1 <- cumsum(table1_b$breaksHoldX1)
table1_b$totalBreakOutHoldsX2 <- cumsum(table1_b$breaksHoldX2)
table1_b$totalMuayThaiKicksX1 <- cumsum(table1_b$muayThaiKickX1)
table1_b$totalMuayThaiKicksX2 <- cumsum(table1_b$muayThaiKickX2)
table1_b$totalPushKicksX1 <- cumsum(table1_b$pushKickX1)
table1_b$totalPushKicksX2 <- cumsum(table1_b$pushKickX2)
table1_b$totalopenguardKicksX1 <- cumsum(table1_b$openGuardKickX1)
table1_b$totalopenguardKicksX2 <- cumsum(table1_b$openGuardKickX2)
tail(table1_b[,197:210],10)
## totalHoldsX1 totalHoldsX2 totalLostHoldsX1 totalLostHoldsX2
## 275 0 0 0 0
## 276 0 0 0 0
## 277 0 0 0 0
## 278 0 0 0 0
## 279 0 0 0 0
## 280 0 0 0 0
## 281 0 0 0 0
## 282 0 0 0 0
## 283 0 0 0 0
## 284 0 0 0 0
## totalCaughtHoldsX1 totalCaughtHoldsX2 totalBreakOutHoldsX1
## 275 0 0 0
## 276 0 0 0
## 277 0 0 0
## 278 0 0 0
## 279 0 0 0
## 280 0 0 0
## 281 0 0 0
## 282 0 0 0
## 283 0 0 0
## 284 0 0 0
## totalBreakOutHoldsX2 totalMuayThaiKicksX1 totalMuayThaiKicksX2
## 275 0 4 1
## 276 0 5 1
## 277 0 5 1
## 278 0 5 1
## 279 0 5 1
## 280 0 5 1
## 281 0 5 1
## 282 0 5 1
## 283 0 5 1
## 284 0 5 1
## totalPushKicksX1 totalPushKicksX2 totalopenguardKicksX1
## 275 0 3 0
## 276 0 3 0
## 277 0 3 0
## 278 0 3 0
## 279 0 3 0
## 280 0 3 0
## 281 0 3 0
## 282 0 3 0
## 283 0 3 0
## 284 0 3 0
## totalopenguardKicksX2
## 275 0
## 276 0
## 277 0
## 278 0
## 279 0
## 280 0
## 281 0
## 282 0
## 283 0
## 284 0
The third fighter (as X2) table.
table1_c$totalHoldsX1 <- cumsum(table1_c$holdingX1)
table1_c$totalHoldsX2 <- cumsum(table1_c$holdingX2)
table1_c$totalLostHoldsX1 <- cumsum(table1_c$lostHoldX1)
table1_c$totalLostHoldsX2 <- cumsum(table1_c$lostHoldX2)
table1_c$totalCaughtHoldsX1 <- cumsum(table1_c$caughtHoldX1)
table1_c$totalCaughtHoldsX2 <- cumsum(table1_c$caughtHoldX2)
table1_c$totalBreakOutHoldsX1 <- cumsum(table1_c$breaksHoldX1)
table1_c$totalBreakOutHoldsX2 <- cumsum(table1_c$breaksHoldX2)
table1_c$totalMuayThaiKicksX1 <- cumsum(table1_c$muayThaiKickX1)
table1_c$totalMuayThaiKicksX2 <- cumsum(table1_c$muayThaiKickX2)
table1_c$totalPushKicksX1 <- cumsum(table1_c$pushKickX1)
table1_c$totalPushKicksX2 <- cumsum(table1_c$pushKickX2)
table1_c$totalopenguardKicksX1 <- cumsum(table1_c$openGuardKickX1)
table1_c$totalopenguardKicksX2 <- cumsum(table1_c$openGuardKickX2)
tail(table1_c[,197:210],10)
## totalHoldsX1 totalHoldsX2 totalLostHoldsX1 totalLostHoldsX2
## 354 0 0 0 0
## 355 0 0 0 0
## 356 0 0 0 0
## 357 0 0 0 0
## 358 0 0 0 0
## 359 0 0 0 0
## 360 0 0 0 0
## 361 0 0 0 0
## 362 0 0 0 0
## 363 0 0 0 0
## totalCaughtHoldsX1 totalCaughtHoldsX2 totalBreakOutHoldsX1
## 354 0 0 0
## 355 0 0 0
## 356 0 0 0
## 357 0 0 0
## 358 0 0 0
## 359 0 0 0
## 360 0 0 0
## 361 0 0 0
## 362 0 0 0
## 363 0 0 0
## totalBreakOutHoldsX2 totalMuayThaiKicksX1 totalMuayThaiKicksX2
## 354 0 21 1
## 355 0 21 2
## 356 0 21 2
## 357 0 22 2
## 358 0 22 2
## 359 0 22 2
## 360 0 22 2
## 361 0 22 2
## 362 0 22 2
## 363 0 22 2
## totalPushKicksX1 totalPushKicksX2 totalopenguardKicksX1
## 354 2 3 0
## 355 2 3 0
## 356 2 3 0
## 357 2 3 0
## 358 2 3 0
## 359 2 3 0
## 360 2 3 0
## 361 2 3 0
## 362 2 3 0
## 363 3 3 0
## totalopenguardKicksX2
## 354 0
## 355 0
## 356 0
## 357 0
## 358 0
## 359 0
## 360 0
## 361 0
## 362 0
## 363 0
The fourth fighter (as X2) table.
table1_d$totalHoldsX1 <- cumsum(table1_d$holdingX1)
table1_d$totalHoldsX2 <- cumsum(table1_d$holdingX2)
table1_d$totalLostHoldsX1 <- cumsum(table1_d$lostHoldX1)
table1_d$totalLostHoldsX2 <- cumsum(table1_d$lostHoldX2)
table1_d$totalCaughtHoldsX1 <- cumsum(table1_d$caughtHoldX1)
table1_d$totalCaughtHoldsX2 <- cumsum(table1_d$caughtHoldX2)
table1_d$totalBreakOutHoldsX1 <- cumsum(table1_d$breaksHoldX1)
table1_d$totalBreakOutHoldsX2 <- cumsum(table1_d$breaksHoldX2)
table1_d$totalMuayThaiKicksX1 <- cumsum(table1_d$muayThaiKickX1)
table1_d$totalMuayThaiKicksX2 <- cumsum(table1_d$muayThaiKickX2)
table1_d$totalPushKicksX1 <- cumsum(table1_d$pushKickX1)
table1_d$totalPushKicksX2 <- cumsum(table1_d$pushKickX2)
table1_d$totalopenguardKicksX1 <- cumsum(table1_d$openGuardKickX1)
table1_d$totalopenguardKicksX2 <- cumsum(table1_d$openGuardKickX2)
tail(table1_d[,197:210],10)
## totalHoldsX1 totalHoldsX2 totalLostHoldsX1 totalLostHoldsX2
## 384 0 0 0 0
## 385 0 0 0 0
## 386 0 0 0 0
## 387 0 0 0 0
## 388 0 0 0 0
## 389 0 0 0 0
## 390 0 0 0 0
## 391 0 0 0 0
## 392 0 0 0 0
## 393 0 0 0 0
## totalCaughtHoldsX1 totalCaughtHoldsX2 totalBreakOutHoldsX1
## 384 0 0 0
## 385 0 0 0
## 386 0 0 0
## 387 0 0 0
## 388 0 0 0
## 389 0 0 0
## 390 0 0 0
## 391 0 0 0
## 392 0 0 0
## 393 0 0 0
## totalBreakOutHoldsX2 totalMuayThaiKicksX1 totalMuayThaiKicksX2
## 384 0 0 0
## 385 0 0 0
## 386 0 0 0
## 387 0 0 0
## 388 0 0 0
## 389 0 0 0
## 390 0 0 0
## 391 0 0 0
## 392 0 0 0
## 393 0 0 0
## totalPushKicksX1 totalPushKicksX2 totalopenguardKicksX1
## 384 2 3 0
## 385 2 3 0
## 386 2 3 0
## 387 2 3 0
## 388 2 3 0
## 389 2 3 0
## 390 2 3 0
## 391 2 3 0
## 392 2 3 0
## 393 2 3 0
## totalopenguardKicksX2
## 384 0
## 385 0
## 386 0
## 387 0
## 388 0
## 389 0
## 390 0
## 391 0
## 392 0
## 393 0
Now we need to create a new table of these combined tables of cumulative sums.
Table10 <- rbind(table1_a,table1_b,table1_c,table1_d)
dim(Table10)
## [1] 393 210
dim(Table9)
## [1] 393 196
head(Table10)
## Round SecondsIntoRound lastAction SecondsLastRoundAction cmTotHitsR.X1
## 1 1 6 0 6 0
## 2 1 11 6 5 0
## 3 1 12 11 1 0
## 4 1 14 12 2 0
## 5 1 18 14 4 0
## 6 1 19 18 1 1
## cmTotHitsL.X1 cmTotHitsM.X1 TotLandsX1 TotMissedX1 TotReceivedX1
## 1 0 1 0 1 0
## 2 0 2 0 1 0
## 3 0 2 0 0 0
## 4 0 3 0 1 0
## 5 1 3 1 0 0
## 6 1 5 0 2 1
## cmTotHitsR.X2 cmTotHitsL.X2 cmTotHitsM.X2 TotLandsX2 TotMissedX2
## 1 0 0 0 0 0
## 2 0 0 0 0 0
## 3 0 0 1 0 1
## 4 0 0 1 0 0
## 5 1 0 1 0 0
## 6 1 1 1 1 0
## TotReceivedX2 Time FighterActionReactions.X1
## 1 0 4:53 missed R mt kick to low L leg
## 2 0 4:48 missed L jab
## 3 0 4:47 <NA>
## 4 0 4:45 missed R mt kick to low L leg
## 5 1 4:41 lands L mt kick to L leg
## 6 0 4:40 missed L jab, missed R cross
## FightersActionsReactions.X2 Notes Crossl.X1 Kneel.X1 Elbowl.X1 Hookl.X1
## 1 <NA> Germaine 0 0 0 0
## 2 <NA> Germaine 0 0 0 0
## 3 missed L mt kick to L low leg Germaine 0 0 0 0
## 4 <NA> Germaine 0 0 0 0
## 5 <NA> Germaine 0 0 0 0
## 6 lands L mt kick to L leg Germaine 0 0 0 0
## Jabl.X1 Kickl.X1 upperl.X1 takedownl.X1 hammerl.X1 Cross2l.X1 Knee2l.X1
## 1 0 0 0 0 0 0 0
## 2 0 0 0 0 0 0 0
## 3 0 0 0 0 0 0 0
## 4 0 0 0 0 0 0 0
## 5 0 1 0 0 0 0 0
## 6 0 0 0 0 0 0 0
## Elbow2l.X1 Hook2l.X1 Jab2l.X1 Kick2l.X1 upper2l.X1 takedown2l.X1 hammer2l.X1
## 1 0 0 0 0 0 0 0
## 2 0 0 0 0 0 0 0
## 3 0 0 0 0 0 0 0
## 4 0 0 0 0 0 0 0
## 5 0 0 0 0 0 0 0
## 6 0 0 0 0 0 0 0
## Cross3l.X1 Knee3l.X1 Elbow3l.X1 Hook3l.X1 Jab3l.X1 Kick3l.X1 upper3l.X1
## 1 0 0 0 0 0 0 0
## 2 0 0 0 0 0 0 0
## 3 0 0 0 0 0 0 0
## 4 0 0 0 0 0 0 0
## 5 0 0 0 0 0 0 0
## 6 0 0 0 0 0 0 0
## takedown3l.X1 hammer3l.X1 Crossl.X2 Kneel.X2 Elbowl.X2 Hookl.X2 Jabl.X2
## 1 0 0 0 0 0 0 0
## 2 0 0 0 0 0 0 0
## 3 0 0 0 0 0 0 0
## 4 0 0 0 0 0 0 0
## 5 0 0 0 0 0 0 0
## 6 0 0 0 0 0 0 0
## Kickl.X2 upperl.X2 takedownl.X2 hammerl.X2 Cross2l.X2 Knee2l.X2 Elbow2l.X2
## 1 0 0 0 0 0 0 0
## 2 0 0 0 0 0 0 0
## 3 0 0 0 0 0 0 0
## 4 0 0 0 0 0 0 0
## 5 0 0 0 0 0 0 0
## 6 1 0 0 0 0 0 0
## Hook2l.X2 Jab2l.X2 Kick2l.X2 upper2l.X2 takedown2l.X2 hammer2l.X2 Cross3l.X2
## 1 0 0 0 0 0 0 0
## 2 0 0 0 0 0 0 0
## 3 0 0 0 0 0 0 0
## 4 0 0 0 0 0 0 0
## 5 0 0 0 0 0 0 0
## 6 0 0 0 0 0 0 0
## Knee3l.X2 Elbow3l.X2 Hook3l.X2 Jab3l.X2 Kick3l.X2 upper3l.X2 takedown3l.X2
## 1 0 0 0 0 0 0 0
## 2 0 0 0 0 0 0 0
## 3 0 0 0 0 0 0 0
## 4 0 0 0 0 0 0 0
## 5 0 0 0 0 0 0 0
## 6 0 0 0 0 0 0 0
## hammer3l.X2 Crossm.X1 Kneem.X1 Elbowm.X1 Hookm.X1 Jabm.X1 Kickm.X1 upperm.X1
## 1 0 0 0 0 0 0 1 0
## 2 0 0 0 0 0 1 0 0
## 3 0 0 0 0 0 0 0 0
## 4 0 0 0 0 0 0 1 0
## 5 0 0 0 0 0 0 0 0
## 6 0 0 0 0 0 1 0 0
## takedownm.X1 hammerm.X1 Cross2m.X1 Knee2m.X1 Elbow2m.X1 Hook2m.X1 Jab2m.X1
## 1 0 0 0 0 0 0 0
## 2 0 0 0 0 0 0 0
## 3 0 0 0 0 0 0 0
## 4 0 0 0 0 0 0 0
## 5 0 0 0 0 0 0 0
## 6 0 0 1 0 0 0 0
## Kick2m.X1 upper2m.X1 takedown2m.X1 hammer2m.X1 Cross3m.X1 Knee3m.X1
## 1 0 0 0 0 0 0
## 2 0 0 0 0 0 0
## 3 0 0 0 0 0 0
## 4 0 0 0 0 0 0
## 5 0 0 0 0 0 0
## 6 0 0 0 0 0 0
## Elbow3m.X1 Hook3m.X1 Jab3m.X1 Kick3m.X1 upper3m.X1 takedown3m.X1 hammer3m.X1
## 1 0 0 0 0 0 0 0
## 2 0 0 0 0 0 0 0
## 3 0 0 0 0 0 0 0
## 4 0 0 0 0 0 0 0
## 5 0 0 0 0 0 0 0
## 6 0 0 0 0 0 0 0
## Crossm.X2 Kneem.X2 Elbowm.X2 Hookm.X2 Jabm.X2 Kickm.X2 upperm.X2 takedownm.X2
## 1 0 0 0 0 0 0 0 0
## 2 0 0 0 0 0 0 0 0
## 3 0 0 0 0 0 1 0 0
## 4 0 0 0 0 0 0 0 0
## 5 0 0 0 0 0 0 0 0
## 6 0 0 0 0 0 0 0 0
## hammerm.X2 Cross2m.X2 Knee2m.X2 Elbow2m.X2 Hook2m.X2 Jab2m.X2 Kick2m.X2
## 1 0 0 0 0 0 0 0
## 2 0 0 0 0 0 0 0
## 3 0 0 0 0 0 0 0
## 4 0 0 0 0 0 0 0
## 5 0 0 0 0 0 0 0
## 6 0 0 0 0 0 0 0
## upper2m.X2 takedown2m.X2 hammer2m.X2 Cross3m.X2 Knee3m.X2 Elbow3m.X2
## 1 0 0 0 0 0 0
## 2 0 0 0 0 0 0
## 3 0 0 0 0 0 0
## 4 0 0 0 0 0 0
## 5 0 0 0 0 0 0
## 6 0 0 0 0 0 0
## Hook3m.X2 Jab3m.X2 Kick3m.X2 upper3m.X2 takedown3m.X2 hammer3m.X2 Crossr.X1
## 1 0 0 0 0 0 0 0
## 2 0 0 0 0 0 0 0
## 3 0 0 0 0 0 0 0
## 4 0 0 0 0 0 0 0
## 5 0 0 0 0 0 0 0
## 6 0 0 0 0 0 0 0
## Kneer.X1 Elbowr.X1 Hookr.X1 Jabr.X1 Kickr.X1 upperr.X1 takedownr.X1
## 1 0 0 0 0 0 0 0
## 2 0 0 0 0 0 0 0
## 3 0 0 0 0 0 0 0
## 4 0 0 0 0 0 0 0
## 5 0 0 0 0 0 0 0
## 6 0 0 0 0 1 0 0
## hammerr.X1 Cross2r.X1 Knee2r.X1 Elbow2r.X1 Hook2r.X1 Jab2r.X1 Kick2r.X1
## 1 0 0 0 0 0 0 0
## 2 0 0 0 0 0 0 0
## 3 0 0 0 0 0 0 0
## 4 0 0 0 0 0 0 0
## 5 0 0 0 0 0 0 0
## 6 0 0 0 0 0 0 0
## upper2r.X1 takedown2r.X1 hammer2r.X1 Cross3r.X1 Knee3r.X1 Elbow3r.X1
## 1 0 0 0 0 0 0
## 2 0 0 0 0 0 0
## 3 0 0 0 0 0 0
## 4 0 0 0 0 0 0
## 5 0 0 0 0 0 0
## 6 0 0 0 0 0 0
## Hook3r.X1 Jab3r.X1 Kick3r.X1 upper3r.X1 takedown3r.X1 hammer3r.X1 Crossr.X2
## 1 0 0 0 0 0 0 0
## 2 0 0 0 0 0 0 0
## 3 0 0 0 0 0 0 0
## 4 0 0 0 0 0 0 0
## 5 0 0 0 0 0 0 0
## 6 0 0 0 0 0 0 0
## Kneer.X2 Elbowr.X2 Hookr.X2 Jabr.X2 Kickr.X2 upperr.X2 takedownr.X2
## 1 0 0 0 0 0 0 0
## 2 0 0 0 0 0 0 0
## 3 0 0 0 0 0 0 0
## 4 0 0 0 0 0 0 0
## 5 0 0 0 0 1 0 0
## 6 0 0 0 0 0 0 0
## hammerr.X2 Cross2r.X2 Knee2r.X2 Elbow2r.X2 Hook2r.X2 Jab2r.X2 Kick2r.X2
## 1 0 0 0 0 0 0 0
## 2 0 0 0 0 0 0 0
## 3 0 0 0 0 0 0 0
## 4 0 0 0 0 0 0 0
## 5 0 0 0 0 0 0 0
## 6 0 0 0 0 0 0 0
## upper2r.X2 takedown2r.X2 hammer2r.X2 Cross3r.X2 Knee3r.X2 Elbow3r.X2
## 1 0 0 0 0 0 0
## 2 0 0 0 0 0 0
## 3 0 0 0 0 0 0
## 4 0 0 0 0 0 0
## 5 0 0 0 0 0 0
## 6 0 0 0 0 0 0
## Hook3r.X2 Jab3r.X2 Kick3r.X2 upper3r.X2 takedown3r.X2 hammer3r.X2 holdingX1
## 1 0 0 0 0 0 0 0
## 2 0 0 0 0 0 0 0
## 3 0 0 0 0 0 0 0
## 4 0 0 0 0 0 0 0
## 5 0 0 0 0 0 0 0
## 6 0 0 0 0 0 0 0
## holdingX2 breaksHoldX1 breaksHoldX2 caughtHoldX1 caughtHoldX2 lostHoldX1
## 1 0 0 0 0 0 0
## 2 0 0 0 0 0 0
## 3 0 0 0 0 0 0
## 4 0 0 0 0 0 0
## 5 0 0 0 0 0 0
## 6 0 0 0 0 0 0
## lostHoldX2 muayThaiKickX1 muayThaiKickX2 pushKickX1 pushKickX2
## 1 0 1 0 0 0
## 2 0 0 0 0 0
## 3 0 0 1 0 0
## 4 0 1 0 0 0
## 5 0 1 0 0 0
## 6 0 0 1 0 0
## openGuardKickX1 openGuardKickX2 totalHoldsX1 totalHoldsX2 totalLostHoldsX1
## 1 0 0 0 0 0
## 2 0 0 0 0 0
## 3 0 0 0 0 0
## 4 0 0 0 0 0
## 5 0 0 0 0 0
## 6 0 0 0 0 0
## totalLostHoldsX2 totalCaughtHoldsX1 totalCaughtHoldsX2 totalBreakOutHoldsX1
## 1 0 0 0 0
## 2 0 0 0 0
## 3 0 0 0 0
## 4 0 0 0 0
## 5 0 0 0 0
## 6 0 0 0 0
## totalBreakOutHoldsX2 totalMuayThaiKicksX1 totalMuayThaiKicksX2
## 1 0 1 0
## 2 0 1 0
## 3 0 1 1
## 4 0 2 1
## 5 0 3 1
## 6 0 3 2
## totalPushKicksX1 totalPushKicksX2 totalopenguardKicksX1 totalopenguardKicksX2
## 1 0 0 0 0
## 2 0 0 0 0
## 3 0 0 0 0
## 4 0 0 0 0
## 5 0 0 0 0
## 6 0 0 0 0
Write this table of added action/reaction features to csv file.
write.csv(Table10, 'Nunez4Fights_addedFeatures.csv', row.names=F)
This section will test out these features in part to predict the target of X1 landing a hit or missing a hit. We have to exclude the features where X2 received a hit if the instance shows a hit landed, so the model learns well. Random forest, recursive partitioned trees, generalized linear models, knn, and gradient boosted models within the R packages of Caret will be used to see how well these features predict the accuracy in a hit landed. Note that we do have all wrestling features for this data set.
library(caret)
## Loading required package: lattice
## Loading required package: ggplot2
Make a table to predict the hit landed for X1 using all features except for the time, notes, X1 landed, X1 missed, X1 received, and X2 received features.
colnames(Table10)
## [1] "Round" "SecondsIntoRound"
## [3] "lastAction" "SecondsLastRoundAction"
## [5] "cmTotHitsR.X1" "cmTotHitsL.X1"
## [7] "cmTotHitsM.X1" "TotLandsX1"
## [9] "TotMissedX1" "TotReceivedX1"
## [11] "cmTotHitsR.X2" "cmTotHitsL.X2"
## [13] "cmTotHitsM.X2" "TotLandsX2"
## [15] "TotMissedX2" "TotReceivedX2"
## [17] "Time" "FighterActionReactions.X1"
## [19] "FightersActionsReactions.X2" "Notes"
## [21] "Crossl.X1" "Kneel.X1"
## [23] "Elbowl.X1" "Hookl.X1"
## [25] "Jabl.X1" "Kickl.X1"
## [27] "upperl.X1" "takedownl.X1"
## [29] "hammerl.X1" "Cross2l.X1"
## [31] "Knee2l.X1" "Elbow2l.X1"
## [33] "Hook2l.X1" "Jab2l.X1"
## [35] "Kick2l.X1" "upper2l.X1"
## [37] "takedown2l.X1" "hammer2l.X1"
## [39] "Cross3l.X1" "Knee3l.X1"
## [41] "Elbow3l.X1" "Hook3l.X1"
## [43] "Jab3l.X1" "Kick3l.X1"
## [45] "upper3l.X1" "takedown3l.X1"
## [47] "hammer3l.X1" "Crossl.X2"
## [49] "Kneel.X2" "Elbowl.X2"
## [51] "Hookl.X2" "Jabl.X2"
## [53] "Kickl.X2" "upperl.X2"
## [55] "takedownl.X2" "hammerl.X2"
## [57] "Cross2l.X2" "Knee2l.X2"
## [59] "Elbow2l.X2" "Hook2l.X2"
## [61] "Jab2l.X2" "Kick2l.X2"
## [63] "upper2l.X2" "takedown2l.X2"
## [65] "hammer2l.X2" "Cross3l.X2"
## [67] "Knee3l.X2" "Elbow3l.X2"
## [69] "Hook3l.X2" "Jab3l.X2"
## [71] "Kick3l.X2" "upper3l.X2"
## [73] "takedown3l.X2" "hammer3l.X2"
## [75] "Crossm.X1" "Kneem.X1"
## [77] "Elbowm.X1" "Hookm.X1"
## [79] "Jabm.X1" "Kickm.X1"
## [81] "upperm.X1" "takedownm.X1"
## [83] "hammerm.X1" "Cross2m.X1"
## [85] "Knee2m.X1" "Elbow2m.X1"
## [87] "Hook2m.X1" "Jab2m.X1"
## [89] "Kick2m.X1" "upper2m.X1"
## [91] "takedown2m.X1" "hammer2m.X1"
## [93] "Cross3m.X1" "Knee3m.X1"
## [95] "Elbow3m.X1" "Hook3m.X1"
## [97] "Jab3m.X1" "Kick3m.X1"
## [99] "upper3m.X1" "takedown3m.X1"
## [101] "hammer3m.X1" "Crossm.X2"
## [103] "Kneem.X2" "Elbowm.X2"
## [105] "Hookm.X2" "Jabm.X2"
## [107] "Kickm.X2" "upperm.X2"
## [109] "takedownm.X2" "hammerm.X2"
## [111] "Cross2m.X2" "Knee2m.X2"
## [113] "Elbow2m.X2" "Hook2m.X2"
## [115] "Jab2m.X2" "Kick2m.X2"
## [117] "upper2m.X2" "takedown2m.X2"
## [119] "hammer2m.X2" "Cross3m.X2"
## [121] "Knee3m.X2" "Elbow3m.X2"
## [123] "Hook3m.X2" "Jab3m.X2"
## [125] "Kick3m.X2" "upper3m.X2"
## [127] "takedown3m.X2" "hammer3m.X2"
## [129] "Crossr.X1" "Kneer.X1"
## [131] "Elbowr.X1" "Hookr.X1"
## [133] "Jabr.X1" "Kickr.X1"
## [135] "upperr.X1" "takedownr.X1"
## [137] "hammerr.X1" "Cross2r.X1"
## [139] "Knee2r.X1" "Elbow2r.X1"
## [141] "Hook2r.X1" "Jab2r.X1"
## [143] "Kick2r.X1" "upper2r.X1"
## [145] "takedown2r.X1" "hammer2r.X1"
## [147] "Cross3r.X1" "Knee3r.X1"
## [149] "Elbow3r.X1" "Hook3r.X1"
## [151] "Jab3r.X1" "Kick3r.X1"
## [153] "upper3r.X1" "takedown3r.X1"
## [155] "hammer3r.X1" "Crossr.X2"
## [157] "Kneer.X2" "Elbowr.X2"
## [159] "Hookr.X2" "Jabr.X2"
## [161] "Kickr.X2" "upperr.X2"
## [163] "takedownr.X2" "hammerr.X2"
## [165] "Cross2r.X2" "Knee2r.X2"
## [167] "Elbow2r.X2" "Hook2r.X2"
## [169] "Jab2r.X2" "Kick2r.X2"
## [171] "upper2r.X2" "takedown2r.X2"
## [173] "hammer2r.X2" "Cross3r.X2"
## [175] "Knee3r.X2" "Elbow3r.X2"
## [177] "Hook3r.X2" "Jab3r.X2"
## [179] "Kick3r.X2" "upper3r.X2"
## [181] "takedown3r.X2" "hammer3r.X2"
## [183] "holdingX1" "holdingX2"
## [185] "breaksHoldX1" "breaksHoldX2"
## [187] "caughtHoldX1" "caughtHoldX2"
## [189] "lostHoldX1" "lostHoldX2"
## [191] "muayThaiKickX1" "muayThaiKickX2"
## [193] "pushKickX1" "pushKickX2"
## [195] "openGuardKickX1" "openGuardKickX2"
## [197] "totalHoldsX1" "totalHoldsX2"
## [199] "totalLostHoldsX1" "totalLostHoldsX2"
## [201] "totalCaughtHoldsX1" "totalCaughtHoldsX2"
## [203] "totalBreakOutHoldsX1" "totalBreakOutHoldsX2"
## [205] "totalMuayThaiKicksX1" "totalMuayThaiKicksX2"
## [207] "totalPushKicksX1" "totalPushKicksX2"
## [209] "totalopenguardKicksX1" "totalopenguardKicksX2"
ML_table <- Table10[,c(2:16,48:74,102:128,183:206)]
str(ML_table)
## 'data.frame': 393 obs. of 93 variables:
## $ SecondsIntoRound : num 6 11 12 14 18 19 31 34 40 41 ...
## $ lastAction : num 0 6 11 12 14 18 19 31 34 40 ...
## $ SecondsLastRoundAction: num 6 5 1 2 4 1 12 3 6 1 ...
## $ cmTotHitsR.X1 : num 0 0 0 0 0 1 1 2 2 2 ...
## $ cmTotHitsL.X1 : num 0 0 0 0 1 1 2 2 2 2 ...
## $ cmTotHitsM.X1 : num 1 2 2 3 3 5 6 6 6 6 ...
## $ TotLandsX1 : num 0 0 0 0 1 0 1 0 0 0 ...
## $ TotMissedX1 : num 1 1 0 1 0 2 1 0 0 0 ...
## $ TotReceivedX1 : num 0 0 0 0 0 1 0 1 0 0 ...
## $ cmTotHitsR.X2 : num 0 0 0 0 1 1 2 2 2 2 ...
## $ cmTotHitsL.X2 : num 0 0 0 0 0 1 1 2 2 2 ...
## $ cmTotHitsM.X2 : num 0 0 1 1 1 1 1 1 2 2 ...
## $ TotLandsX2 : num 0 0 0 0 0 1 0 1 0 0 ...
## $ TotMissedX2 : num 0 0 1 0 0 0 0 0 1 0 ...
## $ TotReceivedX2 : num 0 0 0 0 1 0 1 0 0 0 ...
## $ Crossl.X2 : num 0 0 0 0 0 0 0 0 0 0 ...
## $ Kneel.X2 : num 0 0 0 0 0 0 0 0 0 0 ...
## $ Elbowl.X2 : num 0 0 0 0 0 0 0 0 0 0 ...
## $ Hookl.X2 : num 0 0 0 0 0 0 0 0 0 0 ...
## $ Jabl.X2 : num 0 0 0 0 0 0 0 0 0 0 ...
## $ Kickl.X2 : num 0 0 0 0 0 1 0 1 0 0 ...
## $ upperl.X2 : num 0 0 0 0 0 0 0 0 0 0 ...
## $ takedownl.X2 : num 0 0 0 0 0 0 0 0 0 0 ...
## $ hammerl.X2 : num 0 0 0 0 0 0 0 0 0 0 ...
## $ Cross2l.X2 : num 0 0 0 0 0 0 0 0 0 0 ...
## $ Knee2l.X2 : num 0 0 0 0 0 0 0 0 0 0 ...
## $ Elbow2l.X2 : num 0 0 0 0 0 0 0 0 0 0 ...
## $ Hook2l.X2 : num 0 0 0 0 0 0 0 0 0 0 ...
## $ Jab2l.X2 : num 0 0 0 0 0 0 0 0 0 0 ...
## $ Kick2l.X2 : num 0 0 0 0 0 0 0 0 0 0 ...
## $ upper2l.X2 : num 0 0 0 0 0 0 0 0 0 0 ...
## $ takedown2l.X2 : num 0 0 0 0 0 0 0 0 0 0 ...
## $ hammer2l.X2 : num 0 0 0 0 0 0 0 0 0 0 ...
## $ Cross3l.X2 : num 0 0 0 0 0 0 0 0 0 0 ...
## $ Knee3l.X2 : num 0 0 0 0 0 0 0 0 0 0 ...
## $ Elbow3l.X2 : num 0 0 0 0 0 0 0 0 0 0 ...
## $ Hook3l.X2 : num 0 0 0 0 0 0 0 0 0 0 ...
## $ Jab3l.X2 : num 0 0 0 0 0 0 0 0 0 0 ...
## $ Kick3l.X2 : num 0 0 0 0 0 0 0 0 0 0 ...
## $ upper3l.X2 : num 0 0 0 0 0 0 0 0 0 0 ...
## $ takedown3l.X2 : num 0 0 0 0 0 0 0 0 0 0 ...
## $ hammer3l.X2 : num 0 0 0 0 0 0 0 0 0 0 ...
## $ Crossm.X2 : num 0 0 0 0 0 0 0 0 0 0 ...
## $ Kneem.X2 : num 0 0 0 0 0 0 0 0 0 0 ...
## $ Elbowm.X2 : num 0 0 0 0 0 0 0 0 0 0 ...
## $ Hookm.X2 : num 0 0 0 0 0 0 0 0 0 0 ...
## $ Jabm.X2 : num 0 0 0 0 0 0 0 0 0 0 ...
## $ Kickm.X2 : num 0 0 1 0 0 0 0 0 1 0 ...
## $ upperm.X2 : num 0 0 0 0 0 0 0 0 0 0 ...
## $ takedownm.X2 : num 0 0 0 0 0 0 0 0 0 0 ...
## $ hammerm.X2 : num 0 0 0 0 0 0 0 0 0 0 ...
## $ Cross2m.X2 : num 0 0 0 0 0 0 0 0 0 0 ...
## $ Knee2m.X2 : num 0 0 0 0 0 0 0 0 0 0 ...
## $ Elbow2m.X2 : num 0 0 0 0 0 0 0 0 0 0 ...
## $ Hook2m.X2 : num 0 0 0 0 0 0 0 0 0 0 ...
## $ Jab2m.X2 : num 0 0 0 0 0 0 0 0 0 0 ...
## $ Kick2m.X2 : num 0 0 0 0 0 0 0 0 0 0 ...
## $ upper2m.X2 : num 0 0 0 0 0 0 0 0 0 0 ...
## $ takedown2m.X2 : num 0 0 0 0 0 0 0 0 0 0 ...
## $ hammer2m.X2 : num 0 0 0 0 0 0 0 0 0 0 ...
## $ Cross3m.X2 : num 0 0 0 0 0 0 0 0 0 0 ...
## $ Knee3m.X2 : num 0 0 0 0 0 0 0 0 0 0 ...
## $ Elbow3m.X2 : num 0 0 0 0 0 0 0 0 0 0 ...
## $ Hook3m.X2 : num 0 0 0 0 0 0 0 0 0 0 ...
## $ Jab3m.X2 : num 0 0 0 0 0 0 0 0 0 0 ...
## $ Kick3m.X2 : num 0 0 0 0 0 0 0 0 0 0 ...
## $ upper3m.X2 : num 0 0 0 0 0 0 0 0 0 0 ...
## $ takedown3m.X2 : num 0 0 0 0 0 0 0 0 0 0 ...
## $ hammer3m.X2 : num 0 0 0 0 0 0 0 0 0 0 ...
## $ holdingX1 : num 0 0 0 0 0 0 0 0 1 1 ...
## $ holdingX2 : num 0 0 0 0 0 0 0 0 0 0 ...
## $ breaksHoldX1 : num 0 0 0 0 0 0 0 0 0 0 ...
## $ breaksHoldX2 : num 0 0 0 0 0 0 0 0 0 0 ...
## $ caughtHoldX1 : num 0 0 0 0 0 0 0 0 0 0 ...
## $ caughtHoldX2 : num 0 0 0 0 0 0 0 0 1 1 ...
## $ lostHoldX1 : num 0 0 0 0 0 0 0 0 0 0 ...
## $ lostHoldX2 : num 0 0 0 0 0 0 0 0 0 0 ...
## $ muayThaiKickX1 : num 1 0 0 1 1 0 1 0 0 0 ...
## $ muayThaiKickX2 : num 0 0 1 0 0 1 0 1 1 0 ...
## $ pushKickX1 : num 0 0 0 0 0 0 0 0 0 0 ...
## $ pushKickX2 : num 0 0 0 0 0 0 0 0 0 0 ...
## $ openGuardKickX1 : num 0 0 0 0 0 0 0 0 0 0 ...
## $ openGuardKickX2 : num 0 0 0 0 0 0 0 0 0 0 ...
## $ totalHoldsX1 : num 0 0 0 0 0 0 0 0 1 2 ...
## $ totalHoldsX2 : num 0 0 0 0 0 0 0 0 0 0 ...
## $ totalLostHoldsX1 : num 0 0 0 0 0 0 0 0 0 0 ...
## $ totalLostHoldsX2 : num 0 0 0 0 0 0 0 0 0 0 ...
## $ totalCaughtHoldsX1 : num 0 0 0 0 0 0 0 0 0 0 ...
## $ totalCaughtHoldsX2 : num 0 0 0 0 0 0 0 0 1 2 ...
## $ totalBreakOutHoldsX1 : num 0 0 0 0 0 0 0 0 0 0 ...
## $ totalBreakOutHoldsX2 : num 0 0 0 0 0 0 0 0 0 0 ...
## $ totalMuayThaiKicksX1 : num 1 1 1 2 3 3 4 4 4 4 ...
## $ totalMuayThaiKicksX2 : num 0 0 1 1 1 2 2 3 4 4 ...
Write this table out to use in Python later. Its easier than selecting the columns in Python.
write.csv(ML_table, 'Amanda_ml_ready.csv', row.names=FALSE)
Our target variable is TotLandsX1 which will be a hit landed for X1 based on the other features that include the wrestling features of both X1 and X2, and actions of X2 for hits landed and missed to see how this can predict if X1 will land more hits based on the number of attempts on X1, the seconds holding and being held, the number of holds broken or lost, the seconds since last action by either X1 or X2, the seconds into the round, and cumulative totals for all landed, missed, and received hits for X1 and X2. Since all values are numeric, this will make it easier to classify the hit with linear regression as closer to zero or up to the max hits landed in an observation. We should see what that value is for the max number of hits landed in one second.
max(ML_table$TotLandsX1)
## [1] 3
Amanda has up to three hits landed in an instance.
Lets split the data into a 70% training set and a 30% testing set.
set.seed(12345)
inTrain <- createDataPartition(y=ML_table$TotLandsX1, p=0.7, list=FALSE)
trainingSet <- ML_table[inTrain,]
testingSet <- ML_table[-inTrain,]
Lets get the dimensions of the testing and training set to see how many observations are in each subset of our data.
dim(testingSet)
## [1] 117 93
dim(trainingSet)
## [1] 276 93
testing set has 158 samples. Lets see how many of each total landed hits by X1 are in each subset.
library(dplyr)
summaryLandedHitsX1 <- trainingSet %>% group_by(TotLandsX1) %>% count(TotLandsX1)
summaryLandedHitsX1
## # A tibble: 4 x 2
## # Groups: TotLandsX1 [4]
## TotLandsX1 n
## <dbl> <int>
## 1 0 223
## 2 1 43
## 3 2 9
## 4 3 1
There is only one instance where 3 hits were landed in the training subset it could lead to errors in prediction on the testing set, where recall, or other values could get misclassifed as 3, and if it is in our testing set, then the value isn’t expected or shouldn’t be so we would win on precision as none of the 3s were identified correctly (recall) but also no other classe other than a 3 were classified as 3 (precision). There are also much more 0s in our training set.
summaryLandedHitsX1b <- testingSet %>% group_by(TotLandsX1) %>% count(TotLandsX1)
summaryLandedHitsX1b
## # A tibble: 3 x 2
## # Groups: TotLandsX1 [3]
## TotLandsX1 n
## <dbl> <int>
## 1 0 102
## 2 1 11
## 3 2 4
There are no 3s in our testing set, and few 1s and 2s compared to the number of 0s. The recall could be low on the 2s, but precision should be good on the 0s and 1s.Due to the higher number of those instances being trained in our model.
Lets start with the random forest model using the boot method and also will be centering and scaling the features in our model. We will use the cv or cross validation which tests on subsets when training to build the model, and set classProbs to TRUE so that regression isn’t done on our numeric values, but classification for classes: 0,1,or 2.
rf_cv15 <- train(TotLandsX1~., method='rf',
na.action=na.pass,
data=(trainingSet), preProc = c("center", "scale"),
trControl=trainControl(method='cv', classProbs = T), number=15)
predRF_cv15 <- predict(rf_cv15, testingSet)
DF_cv15 <- data.frame(predRF_cv15, ActualHitsLanded=testingSet$TotLandsX1)
length_cv15 <- length(DF_cv15$ActualHitsLanded)
sum_cv15 <- sum(DF_cv15$predRF_boot==DF_cv15$ActualHitsLanded)
accRF_cv15 <- (sum_cv15/length_cv15)
accRF_cv15
## [1] 0
head(DF_cv15,30)
## predRF_cv15 ActualHitsLanded
## 6 -4.729550e-17 0
## 11 -5.739853e-17 0
## 22 -5.861978e-17 0
## 26 -5.900835e-17 0
## 28 -5.839773e-17 0
## 29 -5.795364e-17 0
## 30 -5.589973e-17 0
## 35 -5.823120e-17 0
## 41 -5.934142e-17 0
## 43 -5.939693e-17 0
## 44 -5.928591e-17 0
## 48 -5.961898e-17 0
## 49 -5.295764e-17 0
## 50 2.000000e-03 0
## 57 2.000000e-03 0
## 64 -5.401235e-17 0
## 69 -5.412337e-17 0
## 84 9.740000e-01 1
## 87 9.740000e-01 1
## 97 -5.889733e-17 0
## 99 -5.939693e-17 0
## 101 -5.445644e-17 0
## 102 -6.239453e-17 0
## 107 2.000000e-03 0
## 108 2.000000e-03 0
## 115 -7.016610e-17 0
## 117 -7.083223e-17 0
## 120 -7.066570e-17 0
## 121 -7.166490e-17 0
## 128 -7.194245e-17 0
The values predicted are outside their class probabilities, probably due to the centered scaling or normalisaion.
Lets try this again without preprocessing which will
rf_cv15b <- train(TotLandsX1~., method='rf',
na.action=na.pass,
data=(trainingSet), #preProc = c("center", "scale"),
trControl=trainControl(method='cv', classProbs = T), number=15)
predRF_cv15b <- predict(rf_cv15b, testingSet)
DF_cv15b <- data.frame(predRF_cv15b, ActualHitsLanded=testingSet$TotLandsX1)
length_cv15b <- length(DF_cv15b$ActualHitsLanded)
sum_cv15b <- sum(DF_cv15b$predRF_boot==DF_cv15b$ActualHitsLanded)
accRF_cv15b <- (sum_cv15b/length_cv15b)
accRF_cv15b
## [1] 0
head(DF_cv15b,30)
## predRF_cv15b ActualHitsLanded
## 6 4.000000e-03 0
## 11 4.000000e-03 0
## 22 -6.789014e-17 0
## 26 -7.033263e-17 0
## 28 -7.005507e-17 0
## 29 -7.038814e-17 0
## 30 -6.511458e-17 0
## 35 -7.649437e-17 0
## 41 -7.427392e-17 0
## 43 -7.499557e-17 0
## 44 -7.555068e-17 0
## 48 -7.654988e-17 0
## 49 -6.750156e-17 0
## 50 -7.588374e-17 0
## 57 -7.799317e-17 0
## 64 -7.999157e-17 0
## 69 -8.104628e-17 0
## 84 9.980000e-01 1
## 87 9.980000e-01 1
## 97 -9.020562e-17 0
## 99 -9.048318e-17 0
## 101 -7.849277e-17 0
## 102 -9.120482e-17 0
## 107 -9.142687e-17 0
## 108 -9.164891e-17 0
## 115 -9.364731e-17 0
## 117 -9.348078e-17 0
## 120 -9.403589e-17 0
## 121 -9.420242e-17 0
## 128 -9.658940e-17 0
Lets add in an extra feature that will round these values to 0, 1, or 2 on both random forest models to get a realistic output. Even when not normalizing and using classProbs set to True, the classification is producing probability classes instead. Could be due to the numeric type of the target. Lets see if we change the numeric type to a factor if it classifies better. Or the same as our rounded features of the random forest models normalized and not normalized.
trainingSetFactor <- trainingSet
testingSetFactor <- testingSet
trainingSetFactor$TotLandsX1 <- as.factor(paste(trainingSetFactor$TotLandsX1))
testingSetFactor$TotLandsX1 <- as.factor(paste(testingSetFactor$TotLandsX1))
rf_cv15c <- train(TotLandsX1~., method='rf',
na.action=na.pass,
data=(trainingSetFactor), #preProc = c("center", "scale"),
trControl=trainControl(method='cv'), number=15)
predRF_cv15c <- predict(rf_cv15c, testingSetFactor)
DF_cv15c <- data.frame(predRF_cv15c, ActualHitsLanded=testingSet$TotLandsX1)
length_cv15c <- length(DF_cv15c$ActualHitsLanded)
sum_cv15c <- sum(DF_cv15c$predRF_cv15c==DF_cv15c$ActualHitsLanded)
accRF_cv15c <- (sum_cv15c/length_cv15c)
accRF_cv15c
## [1] 1
head(DF_cv15c,30)
## predRF_cv15c ActualHitsLanded
## 1 0 0
## 2 0 0
## 3 0 0
## 4 0 0
## 5 0 0
## 6 0 0
## 7 0 0
## 8 0 0
## 9 0 0
## 10 0 0
## 11 0 0
## 12 0 0
## 13 0 0
## 14 0 0
## 15 0 0
## 16 0 0
## 17 0 0
## 18 1 1
## 19 1 1
## 20 0 0
## 21 0 0
## 22 0 0
## 23 0 0
## 24 0 0
## 25 0 0
## 26 0 0
## 27 0 0
## 28 0 0
## 29 0 0
## 30 0 0
It did work better, because the accuracy went from 0 to 100% accuracy in predicting the hits landed correctly.
Lets still add in the features to the previous random forest models to compare.Our minimum bound is 0 and our maximum bound is 3 for hits landed. Lets set those boundaries and round to the nearest value within those bounds.
DF_cv15$roundedPrediction <- ifelse(DF_cv15$predRF_cv15 < 0, 0,
ifelse(DF_cv15$predRF_cv15 > 3, 3,
round(DF_cv15$predRF_cv15)
)
)
DF_cv15$Correct <- ifelse(DF_cv15$ActualHitsLanded==DF_cv15$roundedPrediction,1,0)
accuracy1 <- sum(DF_cv15$Correct)/length(DF_cv15$Correct)
accuracy1
## [1] 1
After setting the boundaries and rounding within those boundaries, our numeric classification was also able to score 100% accuracy.
head(DF_cv15)
## predRF_cv15 ActualHitsLanded roundedPrediction Correct
## 6 -4.729550e-17 0 0 1
## 11 -5.739853e-17 0 0 1
## 22 -5.861978e-17 0 0 1
## 26 -5.900835e-17 0 0 1
## 28 -5.839773e-17 0 0 1
## 29 -5.795364e-17 0 0 1
The non normalized random forest model results when rounding to boundaries or closest class:
DF_cv15b$roundedPrediction <- ifelse(DF_cv15b$predRF_cv15 < 0, 0,
ifelse(DF_cv15b$predRF_cv15 > 3, 3,
round(DF_cv15b$predRF_cv15)
)
)
DF_cv15b$Correct <- ifelse(DF_cv15b$ActualHitsLanded==DF_cv15b$roundedPrediction,1,0)
accuracy2 <- sum(DF_cv15b$Correct)/length(DF_cv15b$Correct)
accuracy2
## [1] 1
This model also scored 100% accuracy after adjusting for boundaries and rounding within those boundaries for our non-normalized features.
head(DF_cv15b)
## predRF_cv15b ActualHitsLanded roundedPrediction Correct
## 6 4.000000e-03 0 0 1
## 11 4.000000e-03 0 0 1
## 22 -6.789014e-17 0 0 1
## 26 -7.033263e-17 0 0 1
## 28 -7.005507e-17 0 0 1
## 29 -7.038814e-17 0 0 1
Next, we will use the k-nearest neighbor algorithm with the cv method to train.
knn_cv <- train(TotLandsX1 ~ .,
method='knn',# preProcess=c('center','scale'),
tuneLength=10, trControl=trainControl(method='cv'),
data=trainingSet)
predKNN_cv <- predict(knn_cv, testingSet)
DF_KNN_cv <- data.frame(predKNN_cv, ActualHitsLanded=testingSet$TotLandsX1)
length_KNN_cv <- length(DF_KNN_cv$ActualHitsLanded)
sum_KNN_cv <- sum(DF_KNN_cv$predKNN_cv==DF_KNN_cv$ActualHitsLanded)
accKNN_cv <- (sum_KNN_cv/length_KNN_cv)
accKNN_cv
## [1] 0.2136752
head(DF_KNN_cv)
## predKNN_cv ActualHitsLanded
## 1 0.36363636 0
## 2 0.09090909 0
## 3 0.18181818 0
## 4 0.27272727 0
## 5 0.27272727 0
## 6 0.36363636 0
Lets add in the same features of rounded and correct fields to this table as well. As the predicted values are not integers.
DF_KNN_cv$roundedPrediction <- ifelse(DF_KNN_cv$predKNN_cv<0,0,
ifelse(DF_KNN_cv$predKNN_cv>3,3,
round(DF_KNN_cv$predKNN_cv,0)))
DF_KNN_cv$Correct <- ifelse(DF_KNN_cv$ActualHitsLanded==DF_KNN_cv$roundedPrediction,1,0)
accuracy3 <- sum(DF_KNN_cv$Correct)/length(DF_KNN_cv$Correct)
accuracy3
## [1] 0.8290598
The KNN algorithm scored 82.9% accuracy after adjusting the output for min and max bounds and rounding within those bounds.
Next, we will use the k-nearest neighbor algorithm with the cv method to train on the target as a factor instead of numeric.
knn_cvb <- train(TotLandsX1 ~ .,
method='knn',# preProcess=c('center','scale'),
tuneLength=10, trControl=trainControl(method='cv'),
data=trainingSetFactor)
predKNN_cvb <- predict(knn_cvb, testingSetFactor)
DF_KNN_cvb <- data.frame(predKNN_cvb, ActualHitsLanded=testingSet$TotLandsX1)
length_KNN_cvb <- length(DF_KNN_cvb$ActualHitsLanded)
sum_KNN_cvb <- sum(DF_KNN_cvb$predKNN_cvb==DF_KNN_cvb$ActualHitsLanded)
accKNN_cvb <- (sum_KNN_cvb/length_KNN_cvb)
accKNN_cvb
## [1] 0.8547009
The KNN algorithm scored best with the target as a factor to predict instead of numeric, with a score of 85.5% accuracy.
head(DF_KNN_cvb)
## predKNN_cvb ActualHitsLanded
## 1 0 0
## 2 0 0
## 3 0 0
## 4 0 0
## 5 0 0
## 6 0 0
Now lets see how well this data will do in a few other algorithms: glm, rpart, and gbm. We have a factor version target and a numeric target with which to compare results.
glmMod2 <- train(TotLandsX1 ~ .,
method='glm', data=trainingSet)
predglm2 <- predict(glmMod2, testingSet)
DF_glm2 <- data.frame(predglm2, ActualHitsLanded=testingSet$TotLandsX1)
length_glm2 <- length(DF_glm2$ActualHitsLanded)
sum_glm2 <- sum(DF_glm2$predglm2==DF_glm2$ActualHitsLanded)
accglm2 <- (sum_glm2/length_glm2)
accglm2
## [1] 0.04273504
head(DF_glm2)
## predglm2 ActualHitsLanded
## 6 -5.886203e-17 0
## 11 -1.436285e-16 0
## 22 -4.795742e-17 0
## 26 -3.622377e-17 0
## 28 -3.035694e-17 0
## 29 -2.742353e-17 0
DF_glm2$roundedPrediction <- ifelse(DF_glm2$predglm2<0,0,
ifelse(DF_glm2$predglm2>3,3,
round(DF_glm2$predglm2,0)))
DF_glm2$Correct <- ifelse(DF_glm2$ActualHitsLanded==DF_glm2$roundedPrediction,1,0)
accuracy4 <- sum(DF_glm2$Correct)/length(DF_glm2$Correct)
accuracy4
## [1] 1
This generalized linear model scored 100% accuracy after adjusting the boundaries and rounding within those boundaries.
head(DF_glm2)
## predglm2 ActualHitsLanded roundedPrediction Correct
## 6 -5.886203e-17 0 0 1
## 11 -1.436285e-16 0 0 1
## 22 -4.795742e-17 0 0 1
## 26 -3.622377e-17 0 0 1
## 28 -3.035694e-17 0 0 1
## 29 -2.742353e-17 0 0 1
rpartMod <- train(TotLandsX1 ~ .,
method='rpart', data=trainingSet)
predrpart <- predict(rpartMod, testingSet)
DF_rpart <- data.frame(predrpart, ActualHitsLanded=testingSet$TotLandsX1)
length_rpart <- length(DF_rpart$ActualHitsLanded)
sum_rpart <- sum(DF_rpart$predrpart==DF_rpart$ActualHitsLanded)
accrpart <- (sum_rpart/length_rpart)
accrpart
## [1] 0.965812
The recursive partitioning trees algorithm scored a 96.6% accuracy without rounding within the boundary adjustments.
head(DF_rpart)
## predrpart ActualHitsLanded
## 6 0 0
## 11 0 0
## 22 0 0
## 26 0 0
## 28 0 0
## 29 0 0
Lets correct the boundaries and round within the boundaries to see if there are any improvements.
DF_rpart$roundedPrediction <- ifelse(DF_rpart$predrpart<0,0,
ifelse(DF_rpart$predrpart>3,3,
round(DF_rpart$predrpart,0)))
DF_rpart$Correct <- ifelse(DF_rpart$ActualHitsLanded==DF_rpart$roundedPrediction,1,0)
accuracy5 <- sum(DF_rpart$Correct)/length(DF_rpart$Correct)
accuracy5
## [1] 1
When adjusting the boundaries and rounding within those boundaries, the improvements were significant for the rpart alogorithm as the accuracy in prediction was 100%.
head(DF_rpart)
## predrpart ActualHitsLanded roundedPrediction Correct
## 6 0 0 0 1
## 11 0 0 0 1
## 22 0 0 0 1
## 26 0 0 0 1
## 28 0 0 0 1
## 29 0 0 0 1
Lets now use the gradient boosted model and compare results.
gbmMod <- train(TotLandsX1 ~ .,
method='gbm', data=trainingSet)
## Iter TrainDeviance ValidDeviance StepSize Improve
## 1 0.2152 nan 0.1000 0.0392
## 2 0.1799 nan 0.1000 0.0374
## 3 0.1509 nan 0.1000 0.0273
## 4 0.1271 nan 0.1000 0.0235
## 5 0.1086 nan 0.1000 0.0190
## 6 0.0932 nan 0.1000 0.0168
## 7 0.0796 nan 0.1000 0.0112
## 8 0.0693 nan 0.1000 0.0105
## 9 0.0619 nan 0.1000 0.0084
## 10 0.0560 nan 0.1000 0.0057
## 20 0.0316 nan 0.1000 0.0008
## 40 0.0258 nan 0.1000 0.0001
## 60 0.0225 nan 0.1000 0.0001
## 80 0.0197 nan 0.1000 0.0001
## 100 0.0180 nan 0.1000 0.0001
## 120 0.0160 nan 0.1000 0.0001
## 140 0.0146 nan 0.1000 0.0001
## 150 0.0141 nan 0.1000 -0.0003
##
## Iter TrainDeviance ValidDeviance StepSize Improve
## 1 0.2167 nan 0.1000 0.0487
## 2 0.1804 nan 0.1000 0.0376
## 3 0.1516 nan 0.1000 0.0323
## 4 0.1263 nan 0.1000 0.0243
## 5 0.1038 nan 0.1000 0.0201
## 6 0.0873 nan 0.1000 0.0164
## 7 0.0743 nan 0.1000 0.0144
## 8 0.0662 nan 0.1000 0.0095
## 9 0.0588 nan 0.1000 0.0079
## 10 0.0512 nan 0.1000 0.0080
## 20 0.0226 nan 0.1000 0.0004
## 40 0.0140 nan 0.1000 0.0000
## 60 0.0110 nan 0.1000 0.0001
## 80 0.0090 nan 0.1000 0.0000
## 100 0.0079 nan 0.1000 -0.0000
## 120 0.0073 nan 0.1000 -0.0001
## 140 0.0066 nan 0.1000 0.0000
## 150 0.0063 nan 0.1000 0.0000
##
## Iter TrainDeviance ValidDeviance StepSize Improve
## 1 0.2186 nan 0.1000 0.0503
## 2 0.1830 nan 0.1000 0.0361
## 3 0.1498 nan 0.1000 0.0343
## 4 0.1245 nan 0.1000 0.0246
## 5 0.1053 nan 0.1000 0.0197
## 6 0.0902 nan 0.1000 0.0166
## 7 0.0756 nan 0.1000 0.0125
## 8 0.0658 nan 0.1000 0.0108
## 9 0.0555 nan 0.1000 0.0093
## 10 0.0478 nan 0.1000 0.0067
## 20 0.0214 nan 0.1000 0.0004
## 40 0.0127 nan 0.1000 0.0002
## 60 0.0097 nan 0.1000 0.0001
## 80 0.0075 nan 0.1000 -0.0001
## 100 0.0064 nan 0.1000 -0.0000
## 120 0.0057 nan 0.1000 -0.0000
## 140 0.0053 nan 0.1000 -0.0000
## 150 0.0050 nan 0.1000 -0.0001
##
## Iter TrainDeviance ValidDeviance StepSize Improve
## 1 0.2455 nan 0.1000 0.0429
## 2 0.2057 nan 0.1000 0.0354
## 3 0.1776 nan 0.1000 0.0258
## 4 0.1518 nan 0.1000 0.0266
## 5 0.1312 nan 0.1000 0.0209
## 6 0.1155 nan 0.1000 0.0185
## 7 0.1011 nan 0.1000 0.0137
## 8 0.0894 nan 0.1000 0.0112
## 9 0.0747 nan 0.1000 0.0068
## 10 0.0677 nan 0.1000 0.0075
## 20 0.0385 nan 0.1000 0.0008
## 40 0.0325 nan 0.1000 0.0002
## 60 0.0306 nan 0.1000 0.0001
## 80 0.0226 nan 0.1000 0.0000
## 100 0.0193 nan 0.1000 -0.0000
## 120 0.0166 nan 0.1000 0.0000
## 140 0.0162 nan 0.1000 0.0000
## 150 0.0143 nan 0.1000 0.0008
##
## Iter TrainDeviance ValidDeviance StepSize Improve
## 1 0.2449 nan 0.1000 0.0493
## 2 0.2067 nan 0.1000 0.0395
## 3 0.1712 nan 0.1000 0.0306
## 4 0.1474 nan 0.1000 0.0254
## 5 0.1242 nan 0.1000 0.0234
## 6 0.1057 nan 0.1000 0.0167
## 7 0.0911 nan 0.1000 0.0128
## 8 0.0800 nan 0.1000 0.0090
## 9 0.0726 nan 0.1000 0.0076
## 10 0.0637 nan 0.1000 0.0073
## 20 0.0346 nan 0.1000 0.0004
## 40 0.0214 nan 0.1000 -0.0001
## 60 0.0191 nan 0.1000 -0.0003
## 80 0.0174 nan 0.1000 -0.0002
## 100 0.0161 nan 0.1000 -0.0000
## 120 0.0135 nan 0.1000 -0.0000
## 140 0.0128 nan 0.1000 -0.0002
## 150 0.0123 nan 0.1000 -0.0000
##
## Iter TrainDeviance ValidDeviance StepSize Improve
## 1 0.2498 nan 0.1000 0.0492
## 2 0.2104 nan 0.1000 0.0387
## 3 0.1782 nan 0.1000 0.0297
## 4 0.1525 nan 0.1000 0.0289
## 5 0.1314 nan 0.1000 0.0206
## 6 0.1122 nan 0.1000 0.0178
## 7 0.0964 nan 0.1000 0.0149
## 8 0.0836 nan 0.1000 0.0126
## 9 0.0740 nan 0.1000 0.0082
## 10 0.0663 nan 0.1000 0.0072
## 20 0.0271 nan 0.1000 0.0006
## 40 0.0198 nan 0.1000 -0.0000
## 60 0.0140 nan 0.1000 -0.0001
## 80 0.0119 nan 0.1000 -0.0004
## 100 0.0107 nan 0.1000 -0.0001
## 120 0.0083 nan 0.1000 -0.0001
## 140 0.0077 nan 0.1000 -0.0001
## 150 0.0069 nan 0.1000 -0.0001
##
## Iter TrainDeviance ValidDeviance StepSize Improve
## 1 0.2046 nan 0.1000 0.0415
## 2 0.1719 nan 0.1000 0.0297
## 3 0.1454 nan 0.1000 0.0201
## 4 0.1259 nan 0.1000 0.0191
## 5 0.1108 nan 0.1000 0.0162
## 6 0.0964 nan 0.1000 0.0122
## 7 0.0835 nan 0.1000 0.0090
## 8 0.0740 nan 0.1000 0.0087
## 9 0.0664 nan 0.1000 0.0078
## 10 0.0606 nan 0.1000 0.0049
## 20 0.0384 nan 0.1000 0.0007
## 40 0.0336 nan 0.1000 -0.0000
## 60 0.0315 nan 0.1000 -0.0007
## 80 0.0302 nan 0.1000 0.0000
## 100 0.0293 nan 0.1000 -0.0002
## 120 0.0287 nan 0.1000 0.0001
## 140 0.0277 nan 0.1000 -0.0002
## 150 0.0271 nan 0.1000 -0.0000
##
## Iter TrainDeviance ValidDeviance StepSize Improve
## 1 0.2036 nan 0.1000 0.0429
## 2 0.1734 nan 0.1000 0.0323
## 3 0.1435 nan 0.1000 0.0233
## 4 0.1218 nan 0.1000 0.0233
## 5 0.1051 nan 0.1000 0.0154
## 6 0.0896 nan 0.1000 0.0139
## 7 0.0786 nan 0.1000 0.0131
## 8 0.0670 nan 0.1000 0.0109
## 9 0.0599 nan 0.1000 0.0083
## 10 0.0558 nan 0.1000 0.0051
## 20 0.0314 nan 0.1000 0.0005
## 40 0.0249 nan 0.1000 0.0001
## 60 0.0229 nan 0.1000 -0.0009
## 80 0.0218 nan 0.1000 -0.0002
## 100 0.0208 nan 0.1000 -0.0004
## 120 0.0196 nan 0.1000 -0.0003
## 140 0.0184 nan 0.1000 -0.0000
## 150 0.0180 nan 0.1000 -0.0003
##
## Iter TrainDeviance ValidDeviance StepSize Improve
## 1 0.1999 nan 0.1000 0.0319
## 2 0.1671 nan 0.1000 0.0307
## 3 0.1376 nan 0.1000 0.0294
## 4 0.1195 nan 0.1000 0.0232
## 5 0.1034 nan 0.1000 0.0155
## 6 0.0867 nan 0.1000 0.0116
## 7 0.0771 nan 0.1000 0.0123
## 8 0.0681 nan 0.1000 0.0090
## 9 0.0601 nan 0.1000 0.0059
## 10 0.0558 nan 0.1000 0.0054
## 20 0.0279 nan 0.1000 -0.0002
## 40 0.0229 nan 0.1000 -0.0003
## 60 0.0208 nan 0.1000 -0.0002
## 80 0.0186 nan 0.1000 -0.0002
## 100 0.0172 nan 0.1000 -0.0000
## 120 0.0162 nan 0.1000 -0.0002
## 140 0.0152 nan 0.1000 -0.0000
## 150 0.0147 nan 0.1000 -0.0001
##
## Iter TrainDeviance ValidDeviance StepSize Improve
## 1 0.2515 nan 0.1000 0.0462
## 2 0.2145 nan 0.1000 0.0304
## 3 0.1869 nan 0.1000 0.0304
## 4 0.1624 nan 0.1000 0.0254
## 5 0.1425 nan 0.1000 0.0203
## 6 0.1252 nan 0.1000 0.0175
## 7 0.1101 nan 0.1000 0.0114
## 8 0.1006 nan 0.1000 0.0117
## 9 0.0928 nan 0.1000 0.0087
## 10 0.0855 nan 0.1000 0.0079
## 20 0.0552 nan 0.1000 0.0006
## 40 0.0496 nan 0.1000 0.0000
## 60 0.0407 nan 0.1000 0.0001
## 80 0.0346 nan 0.1000 -0.0002
## 100 0.0339 nan 0.1000 -0.0000
## 120 0.0330 nan 0.1000 -0.0000
## 140 0.0323 nan 0.1000 -0.0002
## 150 0.0320 nan 0.1000 -0.0002
##
## Iter TrainDeviance ValidDeviance StepSize Improve
## 1 0.2536 nan 0.1000 0.0453
## 2 0.2089 nan 0.1000 0.0377
## 3 0.1787 nan 0.1000 0.0315
## 4 0.1522 nan 0.1000 0.0220
## 5 0.1344 nan 0.1000 0.0205
## 6 0.1157 nan 0.1000 0.0177
## 7 0.1052 nan 0.1000 0.0096
## 8 0.0950 nan 0.1000 0.0110
## 9 0.0851 nan 0.1000 0.0096
## 10 0.0793 nan 0.1000 0.0070
## 20 0.0420 nan 0.1000 0.0012
## 40 0.0292 nan 0.1000 -0.0000
## 60 0.0254 nan 0.1000 -0.0003
## 80 0.0229 nan 0.1000 0.0001
## 100 0.0207 nan 0.1000 -0.0002
## 120 0.0191 nan 0.1000 -0.0002
## 140 0.0176 nan 0.1000 -0.0003
## 150 0.0170 nan 0.1000 0.0000
##
## Iter TrainDeviance ValidDeviance StepSize Improve
## 1 0.2550 nan 0.1000 0.0389
## 2 0.2121 nan 0.1000 0.0395
## 3 0.1774 nan 0.1000 0.0323
## 4 0.1502 nan 0.1000 0.0258
## 5 0.1299 nan 0.1000 0.0162
## 6 0.1130 nan 0.1000 0.0168
## 7 0.0997 nan 0.1000 0.0107
## 8 0.0877 nan 0.1000 0.0094
## 9 0.0784 nan 0.1000 0.0079
## 10 0.0718 nan 0.1000 0.0065
## 20 0.0379 nan 0.1000 0.0006
## 40 0.0290 nan 0.1000 -0.0004
## 60 0.0239 nan 0.1000 0.0000
## 80 0.0218 nan 0.1000 -0.0003
## 100 0.0202 nan 0.1000 -0.0004
## 120 0.0177 nan 0.1000 -0.0003
## 140 0.0158 nan 0.1000 -0.0001
## 150 0.0151 nan 0.1000 -0.0004
##
## Iter TrainDeviance ValidDeviance StepSize Improve
## 1 0.2019 nan 0.1000 0.0457
## 2 0.1690 nan 0.1000 0.0299
## 3 0.1402 nan 0.1000 0.0210
## 4 0.1200 nan 0.1000 0.0187
## 5 0.1048 nan 0.1000 0.0169
## 6 0.0897 nan 0.1000 0.0109
## 7 0.0783 nan 0.1000 0.0124
## 8 0.0690 nan 0.1000 0.0085
## 9 0.0614 nan 0.1000 0.0058
## 10 0.0555 nan 0.1000 0.0051
## 20 0.0342 nan 0.1000 0.0005
## 40 0.0307 nan 0.1000 -0.0000
## 60 0.0298 nan 0.1000 -0.0001
## 80 0.0290 nan 0.1000 0.0000
## 100 0.0283 nan 0.1000 -0.0001
## 120 0.0278 nan 0.1000 -0.0002
## 140 0.0271 nan 0.1000 -0.0000
## 150 0.0268 nan 0.1000 -0.0000
##
## Iter TrainDeviance ValidDeviance StepSize Improve
## 1 0.1987 nan 0.1000 0.0430
## 2 0.1654 nan 0.1000 0.0306
## 3 0.1359 nan 0.1000 0.0317
## 4 0.1163 nan 0.1000 0.0192
## 5 0.0984 nan 0.1000 0.0160
## 6 0.0831 nan 0.1000 0.0125
## 7 0.0727 nan 0.1000 0.0106
## 8 0.0639 nan 0.1000 0.0095
## 9 0.0568 nan 0.1000 0.0076
## 10 0.0508 nan 0.1000 0.0052
## 20 0.0268 nan 0.1000 0.0001
## 40 0.0227 nan 0.1000 -0.0000
## 60 0.0210 nan 0.1000 -0.0008
## 80 0.0197 nan 0.1000 -0.0001
## 100 0.0188 nan 0.1000 -0.0002
## 120 0.0182 nan 0.1000 -0.0006
## 140 0.0172 nan 0.1000 -0.0000
## 150 0.0166 nan 0.1000 -0.0002
##
## Iter TrainDeviance ValidDeviance StepSize Improve
## 1 0.2004 nan 0.1000 0.0360
## 2 0.1679 nan 0.1000 0.0319
## 3 0.1416 nan 0.1000 0.0255
## 4 0.1208 nan 0.1000 0.0195
## 5 0.1049 nan 0.1000 0.0173
## 6 0.0913 nan 0.1000 0.0146
## 7 0.0788 nan 0.1000 0.0125
## 8 0.0689 nan 0.1000 0.0104
## 9 0.0600 nan 0.1000 0.0080
## 10 0.0538 nan 0.1000 0.0066
## 20 0.0297 nan 0.1000 0.0000
## 40 0.0227 nan 0.1000 -0.0001
## 60 0.0205 nan 0.1000 -0.0002
## 80 0.0189 nan 0.1000 -0.0007
## 100 0.0174 nan 0.1000 -0.0001
## 120 0.0162 nan 0.1000 -0.0001
## 140 0.0152 nan 0.1000 -0.0005
## 150 0.0148 nan 0.1000 -0.0000
##
## Iter TrainDeviance ValidDeviance StepSize Improve
## 1 0.2301 nan 0.1000 0.0430
## 2 0.1958 nan 0.1000 0.0315
## 3 0.1682 nan 0.1000 0.0294
## 4 0.1441 nan 0.1000 0.0264
## 5 0.1263 nan 0.1000 0.0186
## 6 0.1098 nan 0.1000 0.0147
## 7 0.1001 nan 0.1000 0.0101
## 8 0.0905 nan 0.1000 0.0104
## 9 0.0809 nan 0.1000 0.0084
## 10 0.0741 nan 0.1000 0.0062
## 20 0.0521 nan 0.1000 0.0006
## 40 0.0466 nan 0.1000 -0.0003
## 60 0.0440 nan 0.1000 0.0001
## 80 0.0421 nan 0.1000 -0.0000
## 100 0.0407 nan 0.1000 -0.0000
## 120 0.0391 nan 0.1000 0.0001
## 140 0.0373 nan 0.1000 -0.0003
## 150 0.0365 nan 0.1000 0.0001
##
## Iter TrainDeviance ValidDeviance StepSize Improve
## 1 0.2294 nan 0.1000 0.0468
## 2 0.1903 nan 0.1000 0.0335
## 3 0.1610 nan 0.1000 0.0236
## 4 0.1368 nan 0.1000 0.0196
## 5 0.1171 nan 0.1000 0.0190
## 6 0.1037 nan 0.1000 0.0147
## 7 0.0924 nan 0.1000 0.0113
## 8 0.0807 nan 0.1000 0.0074
## 9 0.0736 nan 0.1000 0.0070
## 10 0.0690 nan 0.1000 0.0057
## 20 0.0387 nan 0.1000 0.0009
## 40 0.0284 nan 0.1000 -0.0001
## 60 0.0216 nan 0.1000 0.0000
## 80 0.0187 nan 0.1000 -0.0001
## 100 0.0164 nan 0.1000 -0.0000
## 120 0.0147 nan 0.1000 -0.0001
## 140 0.0135 nan 0.1000 0.0000
## 150 0.0132 nan 0.1000 -0.0000
##
## Iter TrainDeviance ValidDeviance StepSize Improve
## 1 0.2333 nan 0.1000 0.0367
## 2 0.1945 nan 0.1000 0.0348
## 3 0.1698 nan 0.1000 0.0289
## 4 0.1471 nan 0.1000 0.0252
## 5 0.1284 nan 0.1000 0.0208
## 6 0.1101 nan 0.1000 0.0168
## 7 0.0948 nan 0.1000 0.0131
## 8 0.0848 nan 0.1000 0.0122
## 9 0.0748 nan 0.1000 0.0085
## 10 0.0697 nan 0.1000 0.0063
## 20 0.0390 nan 0.1000 0.0007
## 40 0.0253 nan 0.1000 0.0004
## 60 0.0188 nan 0.1000 0.0002
## 80 0.0157 nan 0.1000 0.0000
## 100 0.0135 nan 0.1000 -0.0001
## 120 0.0119 nan 0.1000 -0.0002
## 140 0.0104 nan 0.1000 -0.0001
## 150 0.0098 nan 0.1000 -0.0001
##
## Iter TrainDeviance ValidDeviance StepSize Improve
## 1 0.2847 nan 0.1000 0.0502
## 2 0.2457 nan 0.1000 0.0441
## 3 0.2130 nan 0.1000 0.0324
## 4 0.1888 nan 0.1000 0.0269
## 5 0.1617 nan 0.1000 0.0248
## 6 0.1413 nan 0.1000 0.0173
## 7 0.1254 nan 0.1000 0.0155
## 8 0.1139 nan 0.1000 0.0105
## 9 0.1052 nan 0.1000 0.0092
## 10 0.0969 nan 0.1000 0.0078
## 20 0.0588 nan 0.1000 0.0007
## 40 0.0504 nan 0.1000 -0.0003
## 60 0.0480 nan 0.1000 -0.0005
## 80 0.0347 nan 0.1000 0.0000
## 100 0.0237 nan 0.1000 0.0001
## 120 0.0205 nan 0.1000 -0.0000
## 140 0.0159 nan 0.1000 0.0000
## 150 0.0141 nan 0.1000 0.0000
##
## Iter TrainDeviance ValidDeviance StepSize Improve
## 1 0.2839 nan 0.1000 0.0637
## 2 0.2361 nan 0.1000 0.0407
## 3 0.1924 nan 0.1000 0.0247
## 4 0.1626 nan 0.1000 0.0282
## 5 0.1394 nan 0.1000 0.0240
## 6 0.1204 nan 0.1000 0.0180
## 7 0.1067 nan 0.1000 0.0158
## 8 0.0961 nan 0.1000 0.0118
## 9 0.0841 nan 0.1000 0.0097
## 10 0.0742 nan 0.1000 0.0069
## 20 0.0369 nan 0.1000 0.0002
## 40 0.0266 nan 0.1000 0.0003
## 60 0.0185 nan 0.1000 0.0002
## 80 0.0143 nan 0.1000 0.0001
## 100 0.0102 nan 0.1000 -0.0002
## 120 0.0082 nan 0.1000 0.0000
## 140 0.0076 nan 0.1000 -0.0001
## 150 0.0072 nan 0.1000 0.0000
##
## Iter TrainDeviance ValidDeviance StepSize Improve
## 1 0.2778 nan 0.1000 0.0485
## 2 0.2299 nan 0.1000 0.0395
## 3 0.1940 nan 0.1000 0.0352
## 4 0.1641 nan 0.1000 0.0287
## 5 0.1390 nan 0.1000 0.0272
## 6 0.1219 nan 0.1000 0.0192
## 7 0.1096 nan 0.1000 0.0151
## 8 0.0953 nan 0.1000 0.0148
## 9 0.0863 nan 0.1000 0.0096
## 10 0.0776 nan 0.1000 0.0096
## 20 0.0373 nan 0.1000 0.0012
## 40 0.0216 nan 0.1000 0.0001
## 60 0.0150 nan 0.1000 0.0000
## 80 0.0120 nan 0.1000 -0.0004
## 100 0.0092 nan 0.1000 -0.0002
## 120 0.0073 nan 0.1000 -0.0001
## 140 0.0065 nan 0.1000 -0.0000
## 150 0.0060 nan 0.1000 0.0000
##
## Iter TrainDeviance ValidDeviance StepSize Improve
## 1 0.2504 nan 0.1000 0.0496
## 2 0.2117 nan 0.1000 0.0366
## 3 0.1785 nan 0.1000 0.0312
## 4 0.1522 nan 0.1000 0.0242
## 5 0.1315 nan 0.1000 0.0111
## 6 0.1131 nan 0.1000 0.0178
## 7 0.0985 nan 0.1000 0.0153
## 8 0.0859 nan 0.1000 0.0124
## 9 0.0769 nan 0.1000 0.0099
## 10 0.0688 nan 0.1000 0.0084
## 20 0.0328 nan 0.1000 0.0008
## 40 0.0232 nan 0.1000 -0.0000
## 60 0.0149 nan 0.1000 -0.0000
## 80 0.0117 nan 0.1000 -0.0000
## 100 0.0114 nan 0.1000 -0.0002
## 120 0.0096 nan 0.1000 0.0006
## 140 0.0083 nan 0.1000 -0.0001
## 150 0.0076 nan 0.1000 -0.0000
##
## Iter TrainDeviance ValidDeviance StepSize Improve
## 1 0.2474 nan 0.1000 0.0518
## 2 0.2039 nan 0.1000 0.0453
## 3 0.1718 nan 0.1000 0.0364
## 4 0.1444 nan 0.1000 0.0280
## 5 0.1232 nan 0.1000 0.0241
## 6 0.1078 nan 0.1000 0.0178
## 7 0.0940 nan 0.1000 0.0133
## 8 0.0818 nan 0.1000 0.0119
## 9 0.0725 nan 0.1000 0.0090
## 10 0.0599 nan 0.1000 0.0050
## 20 0.0281 nan 0.1000 0.0002
## 40 0.0198 nan 0.1000 -0.0001
## 60 0.0149 nan 0.1000 -0.0000
## 80 0.0118 nan 0.1000 0.0006
## 100 0.0097 nan 0.1000 -0.0002
## 120 0.0073 nan 0.1000 -0.0000
## 140 0.0063 nan 0.1000 -0.0000
## 150 0.0059 nan 0.1000 -0.0001
##
## Iter TrainDeviance ValidDeviance StepSize Improve
## 1 0.2509 nan 0.1000 0.0557
## 2 0.2050 nan 0.1000 0.0357
## 3 0.1692 nan 0.1000 0.0343
## 4 0.1420 nan 0.1000 0.0254
## 5 0.1188 nan 0.1000 0.0227
## 6 0.1006 nan 0.1000 0.0166
## 7 0.0876 nan 0.1000 0.0128
## 8 0.0769 nan 0.1000 0.0106
## 9 0.0686 nan 0.1000 0.0103
## 10 0.0612 nan 0.1000 0.0078
## 20 0.0294 nan 0.1000 0.0006
## 40 0.0193 nan 0.1000 0.0001
## 60 0.0127 nan 0.1000 -0.0001
## 80 0.0106 nan 0.1000 -0.0001
## 100 0.0089 nan 0.1000 -0.0001
## 120 0.0070 nan 0.1000 -0.0000
## 140 0.0056 nan 0.1000 -0.0000
## 150 0.0048 nan 0.1000 -0.0000
##
## Iter TrainDeviance ValidDeviance StepSize Improve
## 1 0.2667 nan 0.1000 0.0474
## 2 0.2252 nan 0.1000 0.0396
## 3 0.1934 nan 0.1000 0.0329
## 4 0.1645 nan 0.1000 0.0251
## 5 0.1427 nan 0.1000 0.0224
## 6 0.1214 nan 0.1000 0.0202
## 7 0.1070 nan 0.1000 0.0143
## 8 0.0973 nan 0.1000 0.0111
## 9 0.0890 nan 0.1000 0.0090
## 10 0.0819 nan 0.1000 0.0072
## 20 0.0429 nan 0.1000 0.0009
## 40 0.0315 nan 0.1000 0.0000
## 60 0.0148 nan 0.1000 0.0011
## 80 0.0128 nan 0.1000 -0.0001
## 100 0.0082 nan 0.1000 0.0000
## 120 0.0063 nan 0.1000 -0.0000
## 140 0.0055 nan 0.1000 0.0000
## 150 0.0051 nan 0.1000 -0.0000
##
## Iter TrainDeviance ValidDeviance StepSize Improve
## 1 0.2641 nan 0.1000 0.0553
## 2 0.2242 nan 0.1000 0.0394
## 3 0.1919 nan 0.1000 0.0344
## 4 0.1654 nan 0.1000 0.0276
## 5 0.1356 nan 0.1000 0.0228
## 6 0.1176 nan 0.1000 0.0217
## 7 0.1008 nan 0.1000 0.0151
## 8 0.0880 nan 0.1000 0.0113
## 9 0.0719 nan 0.1000 0.0104
## 10 0.0654 nan 0.1000 0.0074
## 20 0.0323 nan 0.1000 0.0008
## 40 0.0197 nan 0.1000 -0.0001
## 60 0.0162 nan 0.1000 -0.0003
## 80 0.0134 nan 0.1000 -0.0001
## 100 0.0109 nan 0.1000 -0.0002
## 120 0.0075 nan 0.1000 -0.0001
## 140 0.0059 nan 0.1000 -0.0000
## 150 0.0049 nan 0.1000 0.0002
##
## Iter TrainDeviance ValidDeviance StepSize Improve
## 1 0.2596 nan 0.1000 0.0469
## 2 0.2158 nan 0.1000 0.0452
## 3 0.1798 nan 0.1000 0.0340
## 4 0.1521 nan 0.1000 0.0241
## 5 0.1271 nan 0.1000 0.0228
## 6 0.1077 nan 0.1000 0.0205
## 7 0.0940 nan 0.1000 0.0140
## 8 0.0826 nan 0.1000 0.0097
## 9 0.0684 nan 0.1000 0.0107
## 10 0.0605 nan 0.1000 0.0090
## 20 0.0326 nan 0.1000 0.0004
## 40 0.0217 nan 0.1000 0.0000
## 60 0.0136 nan 0.1000 -0.0001
## 80 0.0109 nan 0.1000 -0.0002
## 100 0.0074 nan 0.1000 -0.0000
## 120 0.0062 nan 0.1000 0.0003
## 140 0.0047 nan 0.1000 -0.0000
## 150 0.0042 nan 0.1000 -0.0000
##
## Iter TrainDeviance ValidDeviance StepSize Improve
## 1 0.1896 nan 0.1000 0.0384
## 2 0.1607 nan 0.1000 0.0301
## 3 0.1350 nan 0.1000 0.0289
## 4 0.1168 nan 0.1000 0.0218
## 5 0.0989 nan 0.1000 0.0158
## 6 0.0845 nan 0.1000 0.0083
## 7 0.0738 nan 0.1000 0.0100
## 8 0.0654 nan 0.1000 0.0089
## 9 0.0579 nan 0.1000 0.0073
## 10 0.0525 nan 0.1000 0.0048
## 20 0.0345 nan 0.1000 0.0008
## 40 0.0307 nan 0.1000 -0.0003
## 60 0.0298 nan 0.1000 0.0001
## 80 0.0291 nan 0.1000 0.0000
## 100 0.0286 nan 0.1000 -0.0001
## 120 0.0281 nan 0.1000 -0.0000
## 140 0.0278 nan 0.1000 -0.0004
## 150 0.0277 nan 0.1000 -0.0003
##
## Iter TrainDeviance ValidDeviance StepSize Improve
## 1 0.1873 nan 0.1000 0.0329
## 2 0.1595 nan 0.1000 0.0316
## 3 0.1332 nan 0.1000 0.0254
## 4 0.1116 nan 0.1000 0.0208
## 5 0.0971 nan 0.1000 0.0143
## 6 0.0852 nan 0.1000 0.0121
## 7 0.0723 nan 0.1000 0.0105
## 8 0.0645 nan 0.1000 0.0079
## 9 0.0572 nan 0.1000 0.0062
## 10 0.0513 nan 0.1000 0.0065
## 20 0.0293 nan 0.1000 -0.0001
## 40 0.0241 nan 0.1000 -0.0007
## 60 0.0218 nan 0.1000 0.0001
## 80 0.0205 nan 0.1000 0.0000
## 100 0.0190 nan 0.1000 -0.0002
## 120 0.0175 nan 0.1000 -0.0001
## 140 0.0164 nan 0.1000 -0.0006
## 150 0.0162 nan 0.1000 -0.0000
##
## Iter TrainDeviance ValidDeviance StepSize Improve
## 1 0.1913 nan 0.1000 0.0332
## 2 0.1593 nan 0.1000 0.0318
## 3 0.1334 nan 0.1000 0.0306
## 4 0.1147 nan 0.1000 0.0184
## 5 0.0990 nan 0.1000 0.0140
## 6 0.0846 nan 0.1000 0.0132
## 7 0.0731 nan 0.1000 0.0116
## 8 0.0634 nan 0.1000 0.0070
## 9 0.0560 nan 0.1000 0.0067
## 10 0.0483 nan 0.1000 0.0053
## 20 0.0303 nan 0.1000 0.0003
## 40 0.0244 nan 0.1000 0.0001
## 60 0.0211 nan 0.1000 -0.0002
## 80 0.0189 nan 0.1000 0.0000
## 100 0.0174 nan 0.1000 -0.0004
## 120 0.0157 nan 0.1000 -0.0000
## 140 0.0145 nan 0.1000 -0.0004
## 150 0.0141 nan 0.1000 -0.0003
##
## Iter TrainDeviance ValidDeviance StepSize Improve
## 1 0.2090 nan 0.1000 0.0345
## 2 0.1763 nan 0.1000 0.0395
## 3 0.1497 nan 0.1000 0.0247
## 4 0.1268 nan 0.1000 0.0206
## 5 0.1090 nan 0.1000 0.0065
## 6 0.0916 nan 0.1000 0.0148
## 7 0.0781 nan 0.1000 0.0125
## 8 0.0674 nan 0.1000 0.0109
## 9 0.0584 nan 0.1000 0.0084
## 10 0.0517 nan 0.1000 0.0075
## 20 0.0219 nan 0.1000 0.0009
## 40 0.0137 nan 0.1000 0.0000
## 60 0.0091 nan 0.1000 0.0006
## 80 0.0074 nan 0.1000 0.0000
## 100 0.0070 nan 0.1000 -0.0000
## 120 0.0058 nan 0.1000 0.0000
## 140 0.0056 nan 0.1000 -0.0000
## 150 0.0055 nan 0.1000 0.0000
##
## Iter TrainDeviance ValidDeviance StepSize Improve
## 1 0.2047 nan 0.1000 0.0415
## 2 0.1688 nan 0.1000 0.0373
## 3 0.1397 nan 0.1000 0.0251
## 4 0.1154 nan 0.1000 0.0253
## 5 0.0956 nan 0.1000 0.0124
## 6 0.0822 nan 0.1000 0.0152
## 7 0.0697 nan 0.1000 0.0125
## 8 0.0567 nan 0.1000 0.0050
## 9 0.0488 nan 0.1000 0.0070
## 10 0.0437 nan 0.1000 0.0062
## 20 0.0189 nan 0.1000 0.0010
## 40 0.0120 nan 0.1000 -0.0003
## 60 0.0108 nan 0.1000 0.0000
## 80 0.0097 nan 0.1000 -0.0000
## 100 0.0089 nan 0.1000 -0.0001
## 120 0.0081 nan 0.1000 -0.0001
## 140 0.0075 nan 0.1000 -0.0001
## 150 0.0072 nan 0.1000 -0.0001
##
## Iter TrainDeviance ValidDeviance StepSize Improve
## 1 0.2058 nan 0.1000 0.0455
## 2 0.1701 nan 0.1000 0.0332
## 3 0.1418 nan 0.1000 0.0259
## 4 0.1192 nan 0.1000 0.0227
## 5 0.0998 nan 0.1000 0.0216
## 6 0.0845 nan 0.1000 0.0098
## 7 0.0718 nan 0.1000 0.0124
## 8 0.0627 nan 0.1000 0.0089
## 9 0.0512 nan 0.1000 0.0055
## 10 0.0447 nan 0.1000 0.0068
## 20 0.0178 nan 0.1000 0.0004
## 40 0.0131 nan 0.1000 -0.0000
## 60 0.0097 nan 0.1000 -0.0004
## 80 0.0084 nan 0.1000 -0.0000
## 100 0.0075 nan 0.1000 -0.0000
## 120 0.0066 nan 0.1000 -0.0000
## 140 0.0061 nan 0.1000 0.0000
## 150 0.0057 nan 0.1000 0.0000
##
## Iter TrainDeviance ValidDeviance StepSize Improve
## 1 0.2091 nan 0.1000 0.0416
## 2 0.1760 nan 0.1000 0.0346
## 3 0.1455 nan 0.1000 0.0227
## 4 0.1227 nan 0.1000 0.0215
## 5 0.1051 nan 0.1000 0.0174
## 6 0.0901 nan 0.1000 0.0118
## 7 0.0782 nan 0.1000 0.0126
## 8 0.0704 nan 0.1000 0.0084
## 9 0.0642 nan 0.1000 0.0075
## 10 0.0585 nan 0.1000 0.0068
## 20 0.0327 nan 0.1000 0.0007
## 40 0.0279 nan 0.1000 -0.0003
## 60 0.0270 nan 0.1000 -0.0003
## 80 0.0258 nan 0.1000 -0.0002
## 100 0.0248 nan 0.1000 -0.0001
## 120 0.0240 nan 0.1000 -0.0000
## 140 0.0234 nan 0.1000 -0.0000
## 150 0.0231 nan 0.1000 -0.0000
##
## Iter TrainDeviance ValidDeviance StepSize Improve
## 1 0.2087 nan 0.1000 0.0520
## 2 0.1730 nan 0.1000 0.0328
## 3 0.1434 nan 0.1000 0.0308
## 4 0.1204 nan 0.1000 0.0224
## 5 0.1008 nan 0.1000 0.0164
## 6 0.0853 nan 0.1000 0.0149
## 7 0.0740 nan 0.1000 0.0102
## 8 0.0640 nan 0.1000 0.0089
## 9 0.0557 nan 0.1000 0.0079
## 10 0.0491 nan 0.1000 0.0065
## 20 0.0260 nan 0.1000 0.0008
## 40 0.0204 nan 0.1000 -0.0002
## 60 0.0184 nan 0.1000 -0.0002
## 80 0.0170 nan 0.1000 -0.0001
## 100 0.0158 nan 0.1000 -0.0001
## 120 0.0147 nan 0.1000 0.0001
## 140 0.0138 nan 0.1000 -0.0002
## 150 0.0133 nan 0.1000 -0.0000
##
## Iter TrainDeviance ValidDeviance StepSize Improve
## 1 0.2086 nan 0.1000 0.0509
## 2 0.1727 nan 0.1000 0.0294
## 3 0.1444 nan 0.1000 0.0305
## 4 0.1206 nan 0.1000 0.0227
## 5 0.1026 nan 0.1000 0.0194
## 6 0.0888 nan 0.1000 0.0152
## 7 0.0775 nan 0.1000 0.0143
## 8 0.0687 nan 0.1000 0.0104
## 9 0.0602 nan 0.1000 0.0079
## 10 0.0519 nan 0.1000 0.0058
## 20 0.0256 nan 0.1000 0.0010
## 40 0.0189 nan 0.1000 -0.0006
## 60 0.0158 nan 0.1000 -0.0000
## 80 0.0144 nan 0.1000 -0.0003
## 100 0.0132 nan 0.1000 -0.0001
## 120 0.0118 nan 0.1000 -0.0004
## 140 0.0109 nan 0.1000 -0.0000
## 150 0.0103 nan 0.1000 -0.0001
##
## Iter TrainDeviance ValidDeviance StepSize Improve
## 1 0.1733 nan 0.1000 0.0290
## 2 0.1451 nan 0.1000 0.0279
## 3 0.1223 nan 0.1000 0.0228
## 4 0.1025 nan 0.1000 0.0198
## 5 0.0853 nan 0.1000 0.0141
## 6 0.0731 nan 0.1000 0.0108
## 7 0.0631 nan 0.1000 0.0094
## 8 0.0548 nan 0.1000 0.0081
## 9 0.0496 nan 0.1000 0.0069
## 10 0.0437 nan 0.1000 0.0059
## 20 0.0237 nan 0.1000 0.0004
## 40 0.0201 nan 0.1000 -0.0000
## 60 0.0186 nan 0.1000 -0.0003
## 80 0.0177 nan 0.1000 -0.0001
## 100 0.0167 nan 0.1000 0.0000
## 120 0.0161 nan 0.1000 -0.0001
## 140 0.0154 nan 0.1000 -0.0001
## 150 0.0151 nan 0.1000 -0.0002
##
## Iter TrainDeviance ValidDeviance StepSize Improve
## 1 0.1680 nan 0.1000 0.0304
## 2 0.1407 nan 0.1000 0.0262
## 3 0.1171 nan 0.1000 0.0289
## 4 0.0969 nan 0.1000 0.0197
## 5 0.0794 nan 0.1000 0.0163
## 6 0.0681 nan 0.1000 0.0110
## 7 0.0578 nan 0.1000 0.0102
## 8 0.0505 nan 0.1000 0.0061
## 9 0.0441 nan 0.1000 0.0060
## 10 0.0399 nan 0.1000 0.0048
## 20 0.0187 nan 0.1000 0.0006
## 40 0.0138 nan 0.1000 0.0001
## 60 0.0117 nan 0.1000 -0.0001
## 80 0.0100 nan 0.1000 0.0000
## 100 0.0086 nan 0.1000 -0.0002
## 120 0.0079 nan 0.1000 -0.0000
## 140 0.0071 nan 0.1000 0.0000
## 150 0.0069 nan 0.1000 0.0000
##
## Iter TrainDeviance ValidDeviance StepSize Improve
## 1 0.1672 nan 0.1000 0.0300
## 2 0.1410 nan 0.1000 0.0268
## 3 0.1200 nan 0.1000 0.0254
## 4 0.0993 nan 0.1000 0.0208
## 5 0.0850 nan 0.1000 0.0166
## 6 0.0717 nan 0.1000 0.0110
## 7 0.0610 nan 0.1000 0.0095
## 8 0.0519 nan 0.1000 0.0090
## 9 0.0452 nan 0.1000 0.0067
## 10 0.0399 nan 0.1000 0.0060
## 20 0.0181 nan 0.1000 0.0000
## 40 0.0139 nan 0.1000 0.0002
## 60 0.0109 nan 0.1000 -0.0001
## 80 0.0090 nan 0.1000 -0.0002
## 100 0.0072 nan 0.1000 -0.0001
## 120 0.0063 nan 0.1000 -0.0000
## 140 0.0053 nan 0.1000 -0.0001
## 150 0.0049 nan 0.1000 -0.0001
##
## Iter TrainDeviance ValidDeviance StepSize Improve
## 1 0.1671 nan 0.1000 0.0306
## 2 0.1383 nan 0.1000 0.0252
## 3 0.1176 nan 0.1000 0.0226
## 4 0.0997 nan 0.1000 0.0193
## 5 0.0851 nan 0.1000 0.0158
## 6 0.0730 nan 0.1000 0.0140
## 7 0.0624 nan 0.1000 0.0116
## 8 0.0536 nan 0.1000 0.0081
## 9 0.0468 nan 0.1000 0.0056
## 10 0.0416 nan 0.1000 0.0053
## 20 0.0217 nan 0.1000 0.0007
## 40 0.0179 nan 0.1000 -0.0001
## 60 0.0166 nan 0.1000 0.0001
## 80 0.0154 nan 0.1000 -0.0000
## 100 0.0146 nan 0.1000 0.0000
## 120 0.0140 nan 0.1000 0.0000
## 140 0.0135 nan 0.1000 -0.0000
## 150 0.0132 nan 0.1000 -0.0000
##
## Iter TrainDeviance ValidDeviance StepSize Improve
## 1 0.1719 nan 0.1000 0.0410
## 2 0.1428 nan 0.1000 0.0284
## 3 0.1186 nan 0.1000 0.0241
## 4 0.0981 nan 0.1000 0.0165
## 5 0.0835 nan 0.1000 0.0158
## 6 0.0688 nan 0.1000 0.0149
## 7 0.0592 nan 0.1000 0.0104
## 8 0.0503 nan 0.1000 0.0093
## 9 0.0434 nan 0.1000 0.0060
## 10 0.0371 nan 0.1000 0.0047
## 20 0.0162 nan 0.1000 0.0005
## 40 0.0123 nan 0.1000 -0.0003
## 60 0.0107 nan 0.1000 -0.0003
## 80 0.0095 nan 0.1000 -0.0001
## 100 0.0088 nan 0.1000 -0.0006
## 120 0.0081 nan 0.1000 -0.0002
## 140 0.0076 nan 0.1000 -0.0002
## 150 0.0073 nan 0.1000 0.0000
##
## Iter TrainDeviance ValidDeviance StepSize Improve
## 1 0.1719 nan 0.1000 0.0392
## 2 0.1424 nan 0.1000 0.0266
## 3 0.1152 nan 0.1000 0.0250
## 4 0.0966 nan 0.1000 0.0155
## 5 0.0813 nan 0.1000 0.0152
## 6 0.0683 nan 0.1000 0.0114
## 7 0.0585 nan 0.1000 0.0108
## 8 0.0504 nan 0.1000 0.0090
## 9 0.0428 nan 0.1000 0.0054
## 10 0.0372 nan 0.1000 0.0055
## 20 0.0162 nan 0.1000 0.0009
## 40 0.0115 nan 0.1000 -0.0005
## 60 0.0099 nan 0.1000 -0.0003
## 80 0.0086 nan 0.1000 -0.0001
## 100 0.0081 nan 0.1000 -0.0001
## 120 0.0072 nan 0.1000 0.0000
## 140 0.0069 nan 0.1000 -0.0001
## 150 0.0066 nan 0.1000 -0.0002
##
## Iter TrainDeviance ValidDeviance StepSize Improve
## 1 0.2639 nan 0.1000 0.0475
## 2 0.2246 nan 0.1000 0.0457
## 3 0.1908 nan 0.1000 0.0357
## 4 0.1638 nan 0.1000 0.0280
## 5 0.1391 nan 0.1000 0.0154
## 6 0.1209 nan 0.1000 0.0191
## 7 0.1067 nan 0.1000 0.0157
## 8 0.0941 nan 0.1000 0.0149
## 9 0.0787 nan 0.1000 0.0111
## 10 0.0688 nan 0.1000 0.0094
## 20 0.0242 nan 0.1000 0.0013
## 40 0.0115 nan 0.1000 -0.0000
## 60 0.0063 nan 0.1000 0.0002
## 80 0.0054 nan 0.1000 0.0000
## 100 0.0043 nan 0.1000 0.0000
## 120 0.0039 nan 0.1000 -0.0000
## 140 0.0036 nan 0.1000 -0.0000
## 150 0.0035 nan 0.1000 -0.0000
##
## Iter TrainDeviance ValidDeviance StepSize Improve
## 1 0.2607 nan 0.1000 0.0474
## 2 0.2174 nan 0.1000 0.0453
## 3 0.1762 nan 0.1000 0.0328
## 4 0.1464 nan 0.1000 0.0300
## 5 0.1218 nan 0.1000 0.0241
## 6 0.1023 nan 0.1000 0.0220
## 7 0.0873 nan 0.1000 0.0132
## 8 0.0760 nan 0.1000 0.0118
## 9 0.0672 nan 0.1000 0.0108
## 10 0.0609 nan 0.1000 0.0073
## 20 0.0239 nan 0.1000 0.0010
## 40 0.0148 nan 0.1000 -0.0001
## 60 0.0100 nan 0.1000 0.0004
## 80 0.0063 nan 0.1000 0.0001
## 100 0.0051 nan 0.1000 -0.0000
## 120 0.0044 nan 0.1000 0.0001
## 140 0.0038 nan 0.1000 -0.0000
## 150 0.0036 nan 0.1000 -0.0000
##
## Iter TrainDeviance ValidDeviance StepSize Improve
## 1 0.2610 nan 0.1000 0.0485
## 2 0.2176 nan 0.1000 0.0497
## 3 0.1801 nan 0.1000 0.0401
## 4 0.1525 nan 0.1000 0.0276
## 5 0.1276 nan 0.1000 0.0278
## 6 0.1129 nan 0.1000 0.0176
## 7 0.0980 nan 0.1000 0.0155
## 8 0.0813 nan 0.1000 0.0148
## 9 0.0710 nan 0.1000 0.0107
## 10 0.0581 nan 0.1000 0.0091
## 20 0.0234 nan 0.1000 0.0006
## 40 0.0116 nan 0.1000 -0.0002
## 60 0.0077 nan 0.1000 0.0000
## 80 0.0056 nan 0.1000 -0.0000
## 100 0.0044 nan 0.1000 -0.0000
## 120 0.0035 nan 0.1000 -0.0000
## 140 0.0033 nan 0.1000 -0.0000
## 150 0.0031 nan 0.1000 -0.0001
##
## Iter TrainDeviance ValidDeviance StepSize Improve
## 1 0.1895 nan 0.1000 0.0357
## 2 0.1588 nan 0.1000 0.0270
## 3 0.1326 nan 0.1000 0.0249
## 4 0.1119 nan 0.1000 0.0218
## 5 0.0962 nan 0.1000 0.0161
## 6 0.0819 nan 0.1000 0.0134
## 7 0.0705 nan 0.1000 0.0127
## 8 0.0614 nan 0.1000 0.0100
## 9 0.0535 nan 0.1000 0.0065
## 10 0.0473 nan 0.1000 0.0060
## 20 0.0246 nan 0.1000 0.0006
## 40 0.0213 nan 0.1000 0.0000
## 60 0.0202 nan 0.1000 0.0001
## 80 0.0192 nan 0.1000 -0.0000
## 100 0.0185 nan 0.1000 -0.0006
## 120 0.0179 nan 0.1000 0.0000
## 140 0.0173 nan 0.1000 -0.0000
## 150 0.0171 nan 0.1000 -0.0000
##
## Iter TrainDeviance ValidDeviance StepSize Improve
## 1 0.1895 nan 0.1000 0.0383
## 2 0.1579 nan 0.1000 0.0319
## 3 0.1326 nan 0.1000 0.0229
## 4 0.1116 nan 0.1000 0.0215
## 5 0.0927 nan 0.1000 0.0173
## 6 0.0804 nan 0.1000 0.0138
## 7 0.0665 nan 0.1000 0.0137
## 8 0.0571 nan 0.1000 0.0083
## 9 0.0486 nan 0.1000 0.0055
## 10 0.0428 nan 0.1000 0.0056
## 20 0.0208 nan 0.1000 -0.0002
## 40 0.0165 nan 0.1000 -0.0003
## 60 0.0152 nan 0.1000 -0.0001
## 80 0.0144 nan 0.1000 -0.0000
## 100 0.0135 nan 0.1000 -0.0003
## 120 0.0127 nan 0.1000 -0.0000
## 140 0.0120 nan 0.1000 -0.0002
## 150 0.0117 nan 0.1000 -0.0001
##
## Iter TrainDeviance ValidDeviance StepSize Improve
## 1 0.1876 nan 0.1000 0.0442
## 2 0.1563 nan 0.1000 0.0347
## 3 0.1304 nan 0.1000 0.0252
## 4 0.1089 nan 0.1000 0.0217
## 5 0.0907 nan 0.1000 0.0179
## 6 0.0783 nan 0.1000 0.0137
## 7 0.0677 nan 0.1000 0.0099
## 8 0.0582 nan 0.1000 0.0067
## 9 0.0506 nan 0.1000 0.0066
## 10 0.0444 nan 0.1000 0.0047
## 20 0.0211 nan 0.1000 0.0008
## 40 0.0161 nan 0.1000 -0.0008
## 60 0.0143 nan 0.1000 -0.0001
## 80 0.0130 nan 0.1000 -0.0001
## 100 0.0120 nan 0.1000 -0.0000
## 120 0.0107 nan 0.1000 -0.0000
## 140 0.0101 nan 0.1000 -0.0001
## 150 0.0098 nan 0.1000 -0.0000
##
## Iter TrainDeviance ValidDeviance StepSize Improve
## 1 0.2712 nan 0.1000 0.0553
## 2 0.2328 nan 0.1000 0.0424
## 3 0.1962 nan 0.1000 0.0305
## 4 0.1699 nan 0.1000 0.0241
## 5 0.1466 nan 0.1000 0.0199
## 6 0.1295 nan 0.1000 0.0176
## 7 0.1152 nan 0.1000 0.0125
## 8 0.1048 nan 0.1000 0.0111
## 9 0.0950 nan 0.1000 0.0095
## 10 0.0883 nan 0.1000 0.0073
## 20 0.0510 nan 0.1000 0.0001
## 40 0.0445 nan 0.1000 -0.0002
## 60 0.0363 nan 0.1000 0.0000
## 80 0.0351 nan 0.1000 -0.0001
## 100 0.0261 nan 0.1000 -0.0000
## 120 0.0202 nan 0.1000 0.0000
## 140 0.0160 nan 0.1000 -0.0001
## 150 0.0157 nan 0.1000 -0.0000
##
## Iter TrainDeviance ValidDeviance StepSize Improve
## 1 0.2666 nan 0.1000 0.0406
## 2 0.2269 nan 0.1000 0.0337
## 3 0.1919 nan 0.1000 0.0338
## 4 0.1621 nan 0.1000 0.0281
## 5 0.1363 nan 0.1000 0.0240
## 6 0.1175 nan 0.1000 0.0155
## 7 0.0965 nan 0.1000 0.0119
## 8 0.0866 nan 0.1000 0.0110
## 9 0.0772 nan 0.1000 0.0098
## 10 0.0704 nan 0.1000 0.0080
## 20 0.0394 nan 0.1000 0.0006
## 40 0.0321 nan 0.1000 -0.0002
## 60 0.0247 nan 0.1000 -0.0001
## 80 0.0227 nan 0.1000 -0.0002
## 100 0.0179 nan 0.1000 -0.0000
## 120 0.0135 nan 0.1000 0.0011
## 140 0.0101 nan 0.1000 -0.0002
## 150 0.0094 nan 0.1000 -0.0001
##
## Iter TrainDeviance ValidDeviance StepSize Improve
## 1 0.2719 nan 0.1000 0.0593
## 2 0.2272 nan 0.1000 0.0444
## 3 0.1944 nan 0.1000 0.0300
## 4 0.1726 nan 0.1000 0.0279
## 5 0.1508 nan 0.1000 0.0241
## 6 0.1303 nan 0.1000 0.0212
## 7 0.1155 nan 0.1000 0.0165
## 8 0.1070 nan 0.1000 0.0093
## 9 0.0967 nan 0.1000 0.0109
## 10 0.0851 nan 0.1000 0.0087
## 20 0.0436 nan 0.1000 0.0013
## 40 0.0200 nan 0.1000 -0.0003
## 60 0.0148 nan 0.1000 0.0001
## 80 0.0128 nan 0.1000 -0.0001
## 100 0.0111 nan 0.1000 -0.0002
## 120 0.0088 nan 0.1000 -0.0001
## 140 0.0072 nan 0.1000 0.0000
## 150 0.0060 nan 0.1000 -0.0001
##
## Iter TrainDeviance ValidDeviance StepSize Improve
## 1 0.2950 nan 0.1000 0.0593
## 2 0.2525 nan 0.1000 0.0426
## 3 0.2129 nan 0.1000 0.0372
## 4 0.1845 nan 0.1000 0.0306
## 5 0.1611 nan 0.1000 0.0216
## 6 0.1413 nan 0.1000 0.0195
## 7 0.1254 nan 0.1000 0.0181
## 8 0.1065 nan 0.1000 0.0129
## 9 0.0900 nan 0.1000 0.0114
## 10 0.0798 nan 0.1000 0.0114
## 20 0.0233 nan 0.1000 0.0019
## 40 0.0109 nan 0.1000 -0.0000
## 60 0.0062 nan 0.1000 -0.0000
## 80 0.0044 nan 0.1000 -0.0000
## 100 0.0037 nan 0.1000 -0.0000
## 120 0.0035 nan 0.1000 -0.0000
## 140 0.0034 nan 0.1000 -0.0000
## 150 0.0034 nan 0.1000 -0.0000
##
## Iter TrainDeviance ValidDeviance StepSize Improve
## 1 0.2832 nan 0.1000 0.0501
## 2 0.2295 nan 0.1000 0.0460
## 3 0.1930 nan 0.1000 0.0358
## 4 0.1580 nan 0.1000 0.0308
## 5 0.1332 nan 0.1000 0.0260
## 6 0.1129 nan 0.1000 0.0208
## 7 0.0961 nan 0.1000 0.0190
## 8 0.0825 nan 0.1000 0.0141
## 9 0.0729 nan 0.1000 0.0099
## 10 0.0605 nan 0.1000 0.0106
## 20 0.0216 nan 0.1000 0.0014
## 40 0.0075 nan 0.1000 -0.0001
## 60 0.0050 nan 0.1000 -0.0001
## 80 0.0039 nan 0.1000 -0.0000
## 100 0.0032 nan 0.1000 -0.0000
## 120 0.0030 nan 0.1000 -0.0000
## 140 0.0027 nan 0.1000 0.0000
## 150 0.0027 nan 0.1000 -0.0000
##
## Iter TrainDeviance ValidDeviance StepSize Improve
## 1 0.2947 nan 0.1000 0.0570
## 2 0.2386 nan 0.1000 0.0469
## 3 0.2014 nan 0.1000 0.0399
## 4 0.1708 nan 0.1000 0.0314
## 5 0.1400 nan 0.1000 0.0219
## 6 0.1188 nan 0.1000 0.0191
## 7 0.0968 nan 0.1000 0.0138
## 8 0.0833 nan 0.1000 0.0134
## 9 0.0734 nan 0.1000 0.0097
## 10 0.0635 nan 0.1000 0.0100
## 20 0.0224 nan 0.1000 0.0009
## 40 0.0104 nan 0.1000 -0.0001
## 60 0.0051 nan 0.1000 -0.0000
## 80 0.0034 nan 0.1000 -0.0000
## 100 0.0029 nan 0.1000 -0.0000
## 120 0.0025 nan 0.1000 -0.0000
## 140 0.0024 nan 0.1000 -0.0000
## 150 0.0022 nan 0.1000 -0.0000
##
## Iter TrainDeviance ValidDeviance StepSize Improve
## 1 0.1750 nan 0.1000 0.0302
## 2 0.1456 nan 0.1000 0.0264
## 3 0.1204 nan 0.1000 0.0226
## 4 0.1046 nan 0.1000 0.0199
## 5 0.0874 nan 0.1000 0.0179
## 6 0.0755 nan 0.1000 0.0117
## 7 0.0648 nan 0.1000 0.0119
## 8 0.0573 nan 0.1000 0.0071
## 9 0.0505 nan 0.1000 0.0060
## 10 0.0447 nan 0.1000 0.0064
## 20 0.0265 nan 0.1000 0.0006
## 40 0.0214 nan 0.1000 -0.0000
## 60 0.0200 nan 0.1000 -0.0001
## 80 0.0190 nan 0.1000 -0.0003
## 100 0.0180 nan 0.1000 -0.0002
## 120 0.0173 nan 0.1000 -0.0005
## 140 0.0168 nan 0.1000 -0.0003
## 150 0.0164 nan 0.1000 -0.0002
##
## Iter TrainDeviance ValidDeviance StepSize Improve
## 1 0.1764 nan 0.1000 0.0354
## 2 0.1461 nan 0.1000 0.0237
## 3 0.1221 nan 0.1000 0.0224
## 4 0.1000 nan 0.1000 0.0193
## 5 0.0841 nan 0.1000 0.0157
## 6 0.0708 nan 0.1000 0.0113
## 7 0.0621 nan 0.1000 0.0095
## 8 0.0518 nan 0.1000 0.0064
## 9 0.0460 nan 0.1000 0.0063
## 10 0.0401 nan 0.1000 0.0057
## 20 0.0196 nan 0.1000 0.0001
## 40 0.0148 nan 0.1000 0.0001
## 60 0.0137 nan 0.1000 -0.0001
## 80 0.0128 nan 0.1000 -0.0001
## 100 0.0120 nan 0.1000 -0.0002
## 120 0.0111 nan 0.1000 -0.0003
## 140 0.0106 nan 0.1000 -0.0001
## 150 0.0104 nan 0.1000 -0.0001
##
## Iter TrainDeviance ValidDeviance StepSize Improve
## 1 0.1721 nan 0.1000 0.0430
## 2 0.1411 nan 0.1000 0.0308
## 3 0.1167 nan 0.1000 0.0252
## 4 0.0971 nan 0.1000 0.0163
## 5 0.0822 nan 0.1000 0.0132
## 6 0.0686 nan 0.1000 0.0107
## 7 0.0588 nan 0.1000 0.0112
## 8 0.0507 nan 0.1000 0.0079
## 9 0.0445 nan 0.1000 0.0055
## 10 0.0397 nan 0.1000 0.0056
## 20 0.0199 nan 0.1000 0.0005
## 40 0.0145 nan 0.1000 -0.0001
## 60 0.0130 nan 0.1000 -0.0002
## 80 0.0120 nan 0.1000 -0.0000
## 100 0.0112 nan 0.1000 -0.0000
## 120 0.0106 nan 0.1000 -0.0001
## 140 0.0100 nan 0.1000 -0.0004
## 150 0.0097 nan 0.1000 -0.0001
##
## Iter TrainDeviance ValidDeviance StepSize Improve
## 1 0.2143 nan 0.1000 0.0453
## 2 0.1804 nan 0.1000 0.0358
## 3 0.1522 nan 0.1000 0.0276
## 4 0.1313 nan 0.1000 0.0219
## 5 0.1127 nan 0.1000 0.0178
## 6 0.0966 nan 0.1000 0.0173
## 7 0.0856 nan 0.1000 0.0125
## 8 0.0762 nan 0.1000 0.0097
## 9 0.0695 nan 0.1000 0.0069
## 10 0.0630 nan 0.1000 0.0069
## 20 0.0383 nan 0.1000 0.0007
## 40 0.0342 nan 0.1000 -0.0001
## 60 0.0332 nan 0.1000 -0.0001
## 80 0.0327 nan 0.1000 -0.0001
## 100 0.0319 nan 0.1000 -0.0000
## 120 0.0311 nan 0.1000 -0.0000
## 140 0.0308 nan 0.1000 -0.0000
## 150 0.0305 nan 0.1000 -0.0001
##
## Iter TrainDeviance ValidDeviance StepSize Improve
## 1 0.2155 nan 0.1000 0.0458
## 2 0.1774 nan 0.1000 0.0405
## 3 0.1492 nan 0.1000 0.0255
## 4 0.1270 nan 0.1000 0.0237
## 5 0.1081 nan 0.1000 0.0156
## 6 0.0934 nan 0.1000 0.0150
## 7 0.0809 nan 0.1000 0.0120
## 8 0.0723 nan 0.1000 0.0094
## 9 0.0652 nan 0.1000 0.0081
## 10 0.0595 nan 0.1000 0.0061
## 20 0.0336 nan 0.1000 0.0003
## 40 0.0281 nan 0.1000 -0.0000
## 60 0.0258 nan 0.1000 -0.0006
## 80 0.0244 nan 0.1000 -0.0003
## 100 0.0231 nan 0.1000 -0.0003
## 120 0.0223 nan 0.1000 -0.0002
## 140 0.0211 nan 0.1000 -0.0003
## 150 0.0206 nan 0.1000 -0.0001
##
## Iter TrainDeviance ValidDeviance StepSize Improve
## 1 0.2139 nan 0.1000 0.0460
## 2 0.1798 nan 0.1000 0.0294
## 3 0.1539 nan 0.1000 0.0292
## 4 0.1288 nan 0.1000 0.0257
## 5 0.1098 nan 0.1000 0.0179
## 6 0.0984 nan 0.1000 0.0144
## 7 0.0873 nan 0.1000 0.0134
## 8 0.0753 nan 0.1000 0.0097
## 9 0.0677 nan 0.1000 0.0086
## 10 0.0599 nan 0.1000 0.0064
## 20 0.0333 nan 0.1000 0.0001
## 40 0.0275 nan 0.1000 -0.0001
## 60 0.0250 nan 0.1000 -0.0002
## 80 0.0223 nan 0.1000 -0.0001
## 100 0.0205 nan 0.1000 -0.0000
## 120 0.0189 nan 0.1000 -0.0001
## 140 0.0174 nan 0.1000 -0.0005
## 150 0.0170 nan 0.1000 -0.0001
##
## Iter TrainDeviance ValidDeviance StepSize Improve
## 1 0.1632 nan 0.1000 0.0318
## 2 0.1355 nan 0.1000 0.0308
## 3 0.1134 nan 0.1000 0.0217
## 4 0.0949 nan 0.1000 0.0159
## 5 0.0792 nan 0.1000 0.0166
## 6 0.0672 nan 0.1000 0.0144
## 7 0.0574 nan 0.1000 0.0086
## 8 0.0498 nan 0.1000 0.0084
## 9 0.0437 nan 0.1000 0.0061
## 10 0.0379 nan 0.1000 0.0049
## 20 0.0183 nan 0.1000 0.0001
## 40 0.0159 nan 0.1000 -0.0000
## 60 0.0153 nan 0.1000 0.0000
## 80 0.0146 nan 0.1000 -0.0000
## 100 0.0144 nan 0.1000 -0.0001
## 120 0.0140 nan 0.1000 -0.0000
## 140 0.0136 nan 0.1000 -0.0002
## 150 0.0134 nan 0.1000 -0.0000
##
## Iter TrainDeviance ValidDeviance StepSize Improve
## 1 0.1620 nan 0.1000 0.0325
## 2 0.1343 nan 0.1000 0.0300
## 3 0.1097 nan 0.1000 0.0262
## 4 0.0920 nan 0.1000 0.0184
## 5 0.0762 nan 0.1000 0.0155
## 6 0.0646 nan 0.1000 0.0108
## 7 0.0553 nan 0.1000 0.0101
## 8 0.0484 nan 0.1000 0.0077
## 9 0.0414 nan 0.1000 0.0071
## 10 0.0360 nan 0.1000 0.0051
## 20 0.0170 nan 0.1000 0.0006
## 40 0.0127 nan 0.1000 -0.0002
## 60 0.0114 nan 0.1000 -0.0000
## 80 0.0106 nan 0.1000 -0.0000
## 100 0.0099 nan 0.1000 -0.0000
## 120 0.0093 nan 0.1000 -0.0001
## 140 0.0087 nan 0.1000 -0.0000
## 150 0.0084 nan 0.1000 -0.0001
##
## Iter TrainDeviance ValidDeviance StepSize Improve
## 1 0.1619 nan 0.1000 0.0361
## 2 0.1344 nan 0.1000 0.0250
## 3 0.1101 nan 0.1000 0.0251
## 4 0.0912 nan 0.1000 0.0166
## 5 0.0758 nan 0.1000 0.0136
## 6 0.0646 nan 0.1000 0.0113
## 7 0.0544 nan 0.1000 0.0105
## 8 0.0475 nan 0.1000 0.0073
## 9 0.0406 nan 0.1000 0.0052
## 10 0.0359 nan 0.1000 0.0045
## 20 0.0167 nan 0.1000 0.0002
## 40 0.0123 nan 0.1000 -0.0002
## 60 0.0105 nan 0.1000 -0.0002
## 80 0.0097 nan 0.1000 -0.0000
## 100 0.0089 nan 0.1000 -0.0001
## 120 0.0082 nan 0.1000 -0.0000
## 140 0.0078 nan 0.1000 -0.0001
## 150 0.0076 nan 0.1000 -0.0001
##
## Iter TrainDeviance ValidDeviance StepSize Improve
## 1 0.2133 nan 0.1000 0.0407
## 2 0.1793 nan 0.1000 0.0306
## 3 0.1503 nan 0.1000 0.0267
## 4 0.1260 nan 0.1000 0.0212
## 5 0.1083 nan 0.1000 0.0161
## 6 0.0931 nan 0.1000 0.0136
## 7 0.0798 nan 0.1000 0.0151
## 8 0.0694 nan 0.1000 0.0099
## 9 0.0610 nan 0.1000 0.0059
## 10 0.0548 nan 0.1000 0.0064
## 20 0.0333 nan 0.1000 0.0009
## 40 0.0277 nan 0.1000 -0.0002
## 60 0.0265 nan 0.1000 -0.0005
## 80 0.0257 nan 0.1000 -0.0003
## 100 0.0250 nan 0.1000 -0.0001
## 120 0.0244 nan 0.1000 -0.0004
## 140 0.0239 nan 0.1000 -0.0001
## 150 0.0234 nan 0.1000 -0.0001
##
## Iter TrainDeviance ValidDeviance StepSize Improve
## 1 0.2087 nan 0.1000 0.0550
## 2 0.1723 nan 0.1000 0.0351
## 3 0.1393 nan 0.1000 0.0351
## 4 0.1167 nan 0.1000 0.0241
## 5 0.0982 nan 0.1000 0.0178
## 6 0.0845 nan 0.1000 0.0151
## 7 0.0741 nan 0.1000 0.0120
## 8 0.0637 nan 0.1000 0.0101
## 9 0.0557 nan 0.1000 0.0071
## 10 0.0500 nan 0.1000 0.0061
## 20 0.0262 nan 0.1000 0.0003
## 40 0.0214 nan 0.1000 -0.0001
## 60 0.0197 nan 0.1000 -0.0004
## 80 0.0188 nan 0.1000 -0.0000
## 100 0.0172 nan 0.1000 -0.0002
## 120 0.0164 nan 0.1000 -0.0000
## 140 0.0151 nan 0.1000 -0.0001
## 150 0.0148 nan 0.1000 -0.0001
##
## Iter TrainDeviance ValidDeviance StepSize Improve
## 1 0.2126 nan 0.1000 0.0475
## 2 0.1792 nan 0.1000 0.0376
## 3 0.1503 nan 0.1000 0.0288
## 4 0.1289 nan 0.1000 0.0268
## 5 0.1094 nan 0.1000 0.0211
## 6 0.0918 nan 0.1000 0.0180
## 7 0.0771 nan 0.1000 0.0115
## 8 0.0689 nan 0.1000 0.0097
## 9 0.0613 nan 0.1000 0.0082
## 10 0.0531 nan 0.1000 0.0042
## 20 0.0270 nan 0.1000 0.0008
## 40 0.0213 nan 0.1000 -0.0001
## 60 0.0184 nan 0.1000 -0.0005
## 80 0.0169 nan 0.1000 -0.0002
## 100 0.0153 nan 0.1000 -0.0001
## 120 0.0143 nan 0.1000 -0.0006
## 140 0.0134 nan 0.1000 -0.0002
## 150 0.0130 nan 0.1000 -0.0002
##
## Iter TrainDeviance ValidDeviance StepSize Improve
## 1 0.1672 nan 0.1000 0.0330
## 2 0.1413 nan 0.1000 0.0270
## 3 0.1200 nan 0.1000 0.0229
## 4 0.0996 nan 0.1000 0.0164
## 5 0.0848 nan 0.1000 0.0174
## 6 0.0718 nan 0.1000 0.0144
## 7 0.0625 nan 0.1000 0.0099
## 8 0.0549 nan 0.1000 0.0077
## 9 0.0485 nan 0.1000 0.0075
## 10 0.0429 nan 0.1000 0.0055
## 20 0.0228 nan 0.1000 0.0002
## 40 0.0182 nan 0.1000 0.0001
## 60 0.0171 nan 0.1000 -0.0001
## 80 0.0163 nan 0.1000 -0.0002
## 100 0.0156 nan 0.1000 -0.0001
## 120 0.0150 nan 0.1000 -0.0000
## 140 0.0142 nan 0.1000 -0.0001
## 150 0.0139 nan 0.1000 0.0001
##
## Iter TrainDeviance ValidDeviance StepSize Improve
## 1 0.1682 nan 0.1000 0.0291
## 2 0.1376 nan 0.1000 0.0257
## 3 0.1172 nan 0.1000 0.0227
## 4 0.0984 nan 0.1000 0.0208
## 5 0.0818 nan 0.1000 0.0122
## 6 0.0699 nan 0.1000 0.0142
## 7 0.0611 nan 0.1000 0.0097
## 8 0.0522 nan 0.1000 0.0072
## 9 0.0466 nan 0.1000 0.0060
## 10 0.0407 nan 0.1000 0.0056
## 20 0.0177 nan 0.1000 0.0005
## 40 0.0132 nan 0.1000 -0.0002
## 60 0.0113 nan 0.1000 -0.0001
## 80 0.0100 nan 0.1000 -0.0000
## 100 0.0091 nan 0.1000 0.0001
## 120 0.0080 nan 0.1000 -0.0001
## 140 0.0069 nan 0.1000 0.0000
## 150 0.0066 nan 0.1000 0.0000
##
## Iter TrainDeviance ValidDeviance StepSize Improve
## 1 0.1689 nan 0.1000 0.0367
## 2 0.1423 nan 0.1000 0.0300
## 3 0.1207 nan 0.1000 0.0240
## 4 0.1003 nan 0.1000 0.0177
## 5 0.0843 nan 0.1000 0.0119
## 6 0.0719 nan 0.1000 0.0117
## 7 0.0604 nan 0.1000 0.0101
## 8 0.0513 nan 0.1000 0.0093
## 9 0.0446 nan 0.1000 0.0060
## 10 0.0389 nan 0.1000 0.0052
## 20 0.0181 nan 0.1000 0.0008
## 40 0.0127 nan 0.1000 0.0001
## 60 0.0106 nan 0.1000 -0.0003
## 80 0.0084 nan 0.1000 -0.0001
## 100 0.0074 nan 0.1000 0.0000
## 120 0.0066 nan 0.1000 -0.0001
## 140 0.0057 nan 0.1000 -0.0002
## 150 0.0053 nan 0.1000 -0.0000
##
## Iter TrainDeviance ValidDeviance StepSize Improve
## 1 0.1831 nan 0.1000 0.0375
## 2 0.1529 nan 0.1000 0.0311
## 3 0.1276 nan 0.1000 0.0205
## 4 0.1059 nan 0.1000 0.0176
## 5 0.0924 nan 0.1000 0.0150
## 6 0.0808 nan 0.1000 0.0117
## 7 0.0702 nan 0.1000 0.0089
## 8 0.0618 nan 0.1000 0.0071
## 9 0.0557 nan 0.1000 0.0066
## 10 0.0508 nan 0.1000 0.0052
## 20 0.0328 nan 0.1000 0.0008
## 40 0.0280 nan 0.1000 0.0001
## 60 0.0266 nan 0.1000 -0.0000
## 80 0.0257 nan 0.1000 0.0000
## 100 0.0251 nan 0.1000 -0.0002
## 120 0.0244 nan 0.1000 -0.0002
## 140 0.0238 nan 0.1000 0.0000
## 150 0.0234 nan 0.1000 -0.0001
##
## Iter TrainDeviance ValidDeviance StepSize Improve
## 1 0.1827 nan 0.1000 0.0304
## 2 0.1538 nan 0.1000 0.0275
## 3 0.1294 nan 0.1000 0.0221
## 4 0.1112 nan 0.1000 0.0191
## 5 0.0962 nan 0.1000 0.0161
## 6 0.0829 nan 0.1000 0.0105
## 7 0.0723 nan 0.1000 0.0114
## 8 0.0630 nan 0.1000 0.0102
## 9 0.0559 nan 0.1000 0.0062
## 10 0.0500 nan 0.1000 0.0053
## 20 0.0269 nan 0.1000 0.0006
## 40 0.0218 nan 0.1000 -0.0001
## 60 0.0203 nan 0.1000 -0.0003
## 80 0.0186 nan 0.1000 -0.0003
## 100 0.0176 nan 0.1000 -0.0003
## 120 0.0167 nan 0.1000 0.0000
## 140 0.0152 nan 0.1000 -0.0002
## 150 0.0147 nan 0.1000 0.0000
##
## Iter TrainDeviance ValidDeviance StepSize Improve
## 1 0.1824 nan 0.1000 0.0368
## 2 0.1530 nan 0.1000 0.0232
## 3 0.1288 nan 0.1000 0.0247
## 4 0.1098 nan 0.1000 0.0226
## 5 0.0941 nan 0.1000 0.0153
## 6 0.0803 nan 0.1000 0.0113
## 7 0.0706 nan 0.1000 0.0118
## 8 0.0630 nan 0.1000 0.0086
## 9 0.0568 nan 0.1000 0.0060
## 10 0.0493 nan 0.1000 0.0077
## 20 0.0292 nan 0.1000 0.0009
## 40 0.0220 nan 0.1000 -0.0000
## 60 0.0199 nan 0.1000 -0.0005
## 80 0.0178 nan 0.1000 -0.0002
## 100 0.0159 nan 0.1000 -0.0001
## 120 0.0140 nan 0.1000 -0.0000
## 140 0.0125 nan 0.1000 -0.0003
## 150 0.0120 nan 0.1000 -0.0003
##
## Iter TrainDeviance ValidDeviance StepSize Improve
## 1 0.2169 nan 0.1000 0.0453
## 2 0.1836 nan 0.1000 0.0356
## 3 0.1546 nan 0.1000 0.0285
## 4 0.1302 nan 0.1000 0.0196
## 5 0.1137 nan 0.1000 0.0178
## 6 0.0982 nan 0.1000 0.0171
## 7 0.0850 nan 0.1000 0.0136
## 8 0.0737 nan 0.1000 0.0109
## 9 0.0642 nan 0.1000 0.0082
## 10 0.0579 nan 0.1000 0.0061
## 20 0.0336 nan 0.1000 0.0009
## 40 0.0293 nan 0.1000 -0.0002
## 60 0.0282 nan 0.1000 0.0001
## 80 0.0275 nan 0.1000 -0.0001
## 100 0.0269 nan 0.1000 0.0000
## 120 0.0263 nan 0.1000 0.0001
## 140 0.0257 nan 0.1000 -0.0001
## 150 0.0252 nan 0.1000 -0.0000
##
## Iter TrainDeviance ValidDeviance StepSize Improve
## 1 0.2133 nan 0.1000 0.0448
## 2 0.1791 nan 0.1000 0.0352
## 3 0.1475 nan 0.1000 0.0297
## 4 0.1231 nan 0.1000 0.0194
## 5 0.1042 nan 0.1000 0.0186
## 6 0.0880 nan 0.1000 0.0178
## 7 0.0761 nan 0.1000 0.0119
## 8 0.0677 nan 0.1000 0.0090
## 9 0.0613 nan 0.1000 0.0076
## 10 0.0544 nan 0.1000 0.0062
## 20 0.0281 nan 0.1000 0.0004
## 40 0.0228 nan 0.1000 0.0000
## 60 0.0205 nan 0.1000 -0.0002
## 80 0.0185 nan 0.1000 -0.0006
## 100 0.0168 nan 0.1000 0.0000
## 120 0.0155 nan 0.1000 -0.0001
## 140 0.0142 nan 0.1000 0.0000
## 150 0.0136 nan 0.1000 -0.0002
##
## Iter TrainDeviance ValidDeviance StepSize Improve
## 1 0.2157 nan 0.1000 0.0419
## 2 0.1828 nan 0.1000 0.0370
## 3 0.1541 nan 0.1000 0.0322
## 4 0.1297 nan 0.1000 0.0267
## 5 0.1090 nan 0.1000 0.0199
## 6 0.0937 nan 0.1000 0.0165
## 7 0.0799 nan 0.1000 0.0125
## 8 0.0688 nan 0.1000 0.0111
## 9 0.0587 nan 0.1000 0.0065
## 10 0.0518 nan 0.1000 0.0060
## 20 0.0266 nan 0.1000 0.0003
## 40 0.0214 nan 0.1000 -0.0003
## 60 0.0185 nan 0.1000 -0.0001
## 80 0.0160 nan 0.1000 -0.0001
## 100 0.0139 nan 0.1000 -0.0001
## 120 0.0124 nan 0.1000 -0.0001
## 140 0.0093 nan 0.1000 -0.0000
## 150 0.0088 nan 0.1000 -0.0001
##
## Iter TrainDeviance ValidDeviance StepSize Improve
## 1 0.2195 nan 0.1000 0.0403
## 2 0.1854 nan 0.1000 0.0358
## 3 0.1584 nan 0.1000 0.0304
## 4 0.1365 nan 0.1000 0.0183
## 5 0.1199 nan 0.1000 0.0190
## 6 0.1036 nan 0.1000 0.0165
## 7 0.0907 nan 0.1000 0.0128
## 8 0.0813 nan 0.1000 0.0095
## 9 0.0741 nan 0.1000 0.0081
## 10 0.0676 nan 0.1000 0.0068
## 20 0.0424 nan 0.1000 0.0006
## 40 0.0369 nan 0.1000 0.0001
## 60 0.0357 nan 0.1000 -0.0008
## 80 0.0348 nan 0.1000 -0.0000
## 100 0.0348 nan 0.1000 -0.0001
## 120 0.0342 nan 0.1000 -0.0001
## 140 0.0338 nan 0.1000 -0.0000
## 150 0.0335 nan 0.1000 -0.0000
predgbm <- predict(gbmMod, testingSet)
DF_gbm <- data.frame(predgbm, ActualHitsLanded=testingSet$TotLandsX1)
length_gbm <- length(DF_gbm$ActualHitsLanded)
sum_gbm <- sum(DF_gbm$predgbm==DF_gbm$ActualHitsLanded)
accgbm <- (sum_gbm/length_gbm)
accgbm
## [1] 0
head(DF_gbm)
## predgbm ActualHitsLanded
## 1 -0.05817499 0
## 2 -0.03818713 0
## 3 0.01349290 0
## 4 0.01349290 0
## 5 0.01349290 0
## 6 0.01349290 0
DF_gbm$roundedPrediction <- ifelse(DF_gbm$predgbm<0,0,
ifelse(DF_gbm$predgbm>3,3,
round(DF_gbm$predgbm,0)))
DF_gbm$Correct <- ifelse(DF_gbm$ActualHitsLanded==DF_gbm$roundedPrediction,1,0)
accuracy6 <- sum(DF_gbm$Correct)/length(DF_gbm$Correct)
accuracy6
## [1] 0.965812
The gbm model scored 96.6% accuracy after adjusting the boundaries and rounding within those boundaries.
head(DF_gbm)
## predgbm ActualHitsLanded roundedPrediction Correct
## 1 -0.05817499 0 0 1
## 2 -0.03818713 0 0 1
## 3 0.01349290 0 0 1
## 4 0.01349290 0 0 1
## 5 0.01349290 0 0 1
## 6 0.01349290 0 0 1
That is it for the machine learning using the caret package of algorithms in R. Next we will compare python’s random forest, gradient boosted models, naive bayes, and convolutional neural network and deep neural networks in predicting hits landed using the reticulate package in R to run python code.
library(reticulate)
## Warning: package 'reticulate' was built under R version 3.6.3
conda_list(conda="auto")
## name python
## 1 Anaconda2 C:\\Users\\m\\Anaconda2\\python.exe
## 2 djangoenv C:\\Users\\m\\Anaconda2\\envs\\djangoenv\\python.exe
## 3 python36 C:\\Users\\m\\Anaconda2\\envs\\python36\\python.exe
## 4 python37 C:\\Users\\m\\Anaconda2\\envs\\python37\\python.exe
## 5 r-reticulate C:\\Users\\m\\Anaconda2\\envs\\r-reticulate\\python.exe
use_condaenv(condaenv = "python36")
import pandas as pd
import matplotlib.pyplot as plt
from textblob import TextBlob
import sklearn
import numpy as np
from sklearn.feature_extraction.text import CountVectorizer, TfidfVectorizer
from sklearn.naive_bayes import MultinomialNB
from sklearn.metrics import classification_report, f1_score, accuracy_score, confusion_matrix
import re
import string
import nltk
np.random.seed(47)
Import our ML ready file to run the python algorithms on with sklearn.
Amanda = pd.read_csv('Amanda_ml_ready.csv', encoding = 'unicode_escape')
print(Amanda.shape)
## (393, 93)
print(Amanda.columns)
## Index(['SecondsIntoRound', 'lastAction', 'SecondsLastRoundAction',
## 'cmTotHitsR.X1', 'cmTotHitsL.X1', 'cmTotHitsM.X1', 'TotLandsX1',
## 'TotMissedX1', 'TotReceivedX1', 'cmTotHitsR.X2', 'cmTotHitsL.X2',
## 'cmTotHitsM.X2', 'TotLandsX2', 'TotMissedX2', 'TotReceivedX2',
## 'Crossl.X2', 'Kneel.X2', 'Elbowl.X2', 'Hookl.X2', 'Jabl.X2', 'Kickl.X2',
## 'upperl.X2', 'takedownl.X2', 'hammerl.X2', 'Cross2l.X2', 'Knee2l.X2',
## 'Elbow2l.X2', 'Hook2l.X2', 'Jab2l.X2', 'Kick2l.X2', 'upper2l.X2',
## 'takedown2l.X2', 'hammer2l.X2', 'Cross3l.X2', 'Knee3l.X2', 'Elbow3l.X2',
## 'Hook3l.X2', 'Jab3l.X2', 'Kick3l.X2', 'upper3l.X2', 'takedown3l.X2',
## 'hammer3l.X2', 'Crossm.X2', 'Kneem.X2', 'Elbowm.X2', 'Hookm.X2',
## 'Jabm.X2', 'Kickm.X2', 'upperm.X2', 'takedownm.X2', 'hammerm.X2',
## 'Cross2m.X2', 'Knee2m.X2', 'Elbow2m.X2', 'Hook2m.X2', 'Jab2m.X2',
## 'Kick2m.X2', 'upper2m.X2', 'takedown2m.X2', 'hammer2m.X2', 'Cross3m.X2',
## 'Knee3m.X2', 'Elbow3m.X2', 'Hook3m.X2', 'Jab3m.X2', 'Kick3m.X2',
## 'upper3m.X2', 'takedown3m.X2', 'hammer3m.X2', 'holdingX1', 'holdingX2',
## 'breaksHoldX1', 'breaksHoldX2', 'caughtHoldX1', 'caughtHoldX2',
## 'lostHoldX1', 'lostHoldX2', 'muayThaiKickX1', 'muayThaiKickX2',
## 'pushKickX1', 'pushKickX2', 'openGuardKickX1', 'openGuardKickX2',
## 'totalHoldsX1', 'totalHoldsX2', 'totalLostHoldsX1', 'totalLostHoldsX2',
## 'totalCaughtHoldsX1', 'totalCaughtHoldsX2', 'totalBreakOutHoldsX1',
## 'totalBreakOutHoldsX2', 'totalMuayThaiKicksX1', 'totalMuayThaiKicksX2'],
## dtype='object')
print(Amanda.head())
## SecondsIntoRound lastAction ... totalMuayThaiKicksX1 totalMuayThaiKicksX2
## 0 6 0 ... 1 0
## 1 11 6 ... 1 0
## 2 12 11 ... 1 1
## 3 14 12 ... 2 1
## 4 18 14 ... 3 1
##
## [5 rows x 93 columns]
print(Amanda.tail())
## SecondsIntoRound lastAction ... totalMuayThaiKicksX1 totalMuayThaiKicksX2
## 388 41 40 ... 0 0
## 389 43 41 ... 0 0
## 390 44 43 ... 0 0
## 391 45 44 ... 0 0
## 392 46 45 ... 0 0
##
## [5 rows x 93 columns]
print(Amanda['TotLandsX1'].unique())
## [0 1 2 3]
There are 4 classes to classify our hits landed in our testing set from the model we build.
Reorder the rows as instances randomised to split into train and test sets of the data.
import numpy as np
Amanda = Amanda.reindex(np.random.permutation(Amanda.index))
print(Amanda.head())
## SecondsIntoRound lastAction ... totalMuayThaiKicksX1 totalMuayThaiKicksX2
## 5 19 18 ... 3 2
## 105 169 168 ... 5 4
## 75 135 134 ... 5 4
## 130 194 193 ... 5 4
## 323 157 154 ... 15 0
##
## [5 rows x 93 columns]
print(Amanda.tail())
## SecondsIntoRound lastAction ... totalMuayThaiKicksX1 totalMuayThaiKicksX2
## 72 132 131 ... 5 4
## 264 146 145 ... 4 1
## 327 173 165 ... 16 0
## 390 44 43 ... 0 0
## 135 199 198 ... 5 4
##
## [5 rows x 93 columns]
There are 393 instances in this data, and 80% is about 314, the target is the hits landed by X1.
# Split/splice into training ~ 80% and testing ~ 20%
Amanda_train = Amanda[:314]
Amanda_test = Amanda[314:]
Amanda_hits_train = Amanda['TotLandsX1'][:314]
Amanda_hits_test = Amanda['TotLandsX1'][314:]
print(Amanda_train.shape)
## (314, 93)
print(Amanda_test.shape)
## (79, 93)
Amanda_train['TotLandsX1'].unique()
## array([0, 2, 1, 3], dtype=int64)
Amanda_test['TotLandsX1'].unique()
## array([0, 1, 2], dtype=int64)
Only the training set has a 3 class, and without the testing set having a 3 class, the confusion matrix will only show the values 0,1, and 2 when analyzing the results of actual versus predicted values.
mnb_Fit = MultinomialNB().fit(Amanda_train, Amanda_hits_train)
predictions = mnb_Fit.predict(Amanda_test)
prd = pd.DataFrame(predictions)
prd.columns=['predictions']
prd.index=Amanda_hits_test.index
pred=pd.concat([pd.DataFrame(prd),Amanda_hits_test],axis=1)
print(pred)
## predictions TotLandsX1
## 216 2 0
## 114 2 0
## 306 0 0
## 178 2 0
## 149 2 1
## .. ... ...
## 72 0 0
## 264 0 0
## 327 1 1
## 390 1 2
## 135 2 0
##
## [79 rows x 2 columns]
pred['predictions'].unique()
## array([2, 0, 1], dtype=int64)
pred['TotLandsX1'].unique()
## array([0, 1, 2], dtype=int64)
The 3 isn’t in the predictions nor the test set.
print('accuracy', accuracy_score(Amanda_hits_test, predictions))
## accuracy 0.5063291139240507
print('confusion matrix')
## confusion matrix
print('rows=expected, cols=predicted')
## rows=expected, cols=predicted
print(confusion_matrix(Amanda_hits_test, predictions))
## [[32 4 27]
## [ 0 6 6]
## [ 0 2 2]]
We can see no 0s were classified from the 1s or 2s giving 100% precision for the zeros, but 4 1s and 27 2s were misclassified as 0s, making the recall 0.5079365 or 50.8% for the zeros. And there were 6 1s correctly identified, but 6 2s were misclassified as 1s for a 6/12 % recall on 1s, and 4 0s were misclassified as 1s as well as 2 2s for a precision of 6/(6+4+2) % precision on 1s. For the 2s, there were 2 correctly classified as a 2, but 2 1s were misclassified as a 2, and 6 1s misclassified as 2s and 27 0s misclassified as 2s. Overall the multinomial naive bayes classifier scored a 50.6% accuracy in prediction of hits landed for Amanda.
from sklearn.ensemble import RandomForestClassifier, GradientBoostingClassifier
from sklearn.metrics import precision_recall_fscore_support as score
import time
rf=RandomForestClassifier(n_estimators=150, max_depth=None, n_jobs=-1)
start=time.time()
rf_model=rf.fit(Amanda_train,Amanda_hits_train)
end=time.time()
fit_time=(end-start)
fit_time
## 0.4859297275543213
start=time.time()
y_pred=rf_model.predict(Amanda_test)
end=time.time()
pred_time=(end-start)
pred_time
## 0.13497400283813477
prd = pd.DataFrame(y_pred)
prd.columns=['Predicted']
prd.index=Amanda_hits_test.index
pred=pd.concat([pd.DataFrame(prd),Amanda_hits_test],axis=1)
print(pred)
## Predicted TotLandsX1
## 216 0 0
## 114 0 0
## 306 0 0
## 178 0 0
## 149 1 1
## .. ... ...
## 72 0 0
## 264 0 0
## 327 1 1
## 390 1 2
## 135 0 0
##
## [79 rows x 2 columns]
from sklearn.metrics import classification_report, f1_score, accuracy_score, confusion_matrix
print('accuracy', accuracy_score(Amanda_hits_test, y_pred))
## accuracy 0.9620253164556962
print('confusion matrix')
## confusion matrix
print(confusion_matrix(Amanda_hits_test, y_pred))
## [[63 0 0]
## [ 1 11 0]
## [ 0 2 2]]
The random forest classifier scored a 96.2% accuracy overall in prediction of hits landed, with almost 100% precision or 63/64 on the 0s, 100% recall on 0s, 11/13 on precision of 1s, and 11/12 recall on 1s, 100% precision on 2s, and 2/4 recall on 2s. The amount of time to predict was also fast as the model ran in parallel in building the trees.
## 0.5709183216094971
start=time.time()
y_pred=gb_model.predict(Amanda_test)
end=time.time()
pred_time=(end-start)
pred_time
## 0.043633222579956055
prd = pd.DataFrame(y_pred)
prd.columns=['Predicted']
prd.index=Amanda_hits_test.index
pred=pd.concat([pd.DataFrame(prd),Amanda_hits_test],axis=1)
print(pred)
## Predicted TotLandsX1
## 216 0 0
## 114 0 0
## 306 0 0
## 178 0 0
## 149 1 1
## .. ... ...
## 72 0 0
## 264 0 0
## 327 1 1
## 390 2 2
## 135 0 0
##
## [79 rows x 2 columns]
from sklearn.metrics import classification_report, f1_score, accuracy_score, confusion_matrix
print('accuracy', accuracy_score(Amanda_hits_test, y_pred))
## accuracy 1.0
print('confusion matrix')
## confusion matrix
print(confusion_matrix(Amanda_hits_test, y_pred))
## [[63 0 0]
## [ 0 12 0]
## [ 0 0 4]]
The gradient boosting classifier scored 100% accuracy with 100% precision and 100% recall on all classes listed. Note that because there was only 1 instance of the 3 class in the training set, it wasn’t enough data to predict any instances in the testing set as a 3, so that class was not part of the prediction. Lets see if there is any difference with using Convolutional Neural Networks (CNNs) AKA Deep NNs or DNNs.
import numpy as np
Amanda2 = Amanda
Amanda2
## SecondsIntoRound lastAction ... totalMuayThaiKicksX1 totalMuayThaiKicksX2
## 5 19 18 ... 3 2
## 105 169 168 ... 5 4
## 75 135 134 ... 5 4
## 130 194 193 ... 5 4
## 323 157 154 ... 15 0
## .. ... ... ... ... ...
## 72 132 131 ... 5 4
## 264 146 145 ... 4 1
## 327 173 165 ... 16 0
## 390 44 43 ... 0 0
## 135 199 198 ... 5 4
##
## [393 rows x 93 columns]
class_mapping = {label: idx for idx, label in enumerate(np.unique(Amanda2['TotLandsX1']))}
class_mapping
## {0: 0, 1: 1, 2: 2, 3: 3}
Amanda_hits_test = pd.DataFrame(Amanda_hits_test)
Amanda_hits_test.columns=['TotLandsX1']
Amanda_hits_test.columns
## Index(['TotLandsX1'], dtype='object')
Amanda_hits_test['TotLandsX1']=Amanda_hits_test['TotLandsX1'].map(class_mapping)
Amanda_hits_test.head()
## TotLandsX1
## 216 0
## 114 0
## 306 0
## 178 0
## 149 1
Amanda_hits_train=pd.DataFrame(Amanda_hits_train)
Amanda_hits_train.columns=['TotLandsX1']
Amanda_hits_train.columns
## Index(['TotLandsX1'], dtype='object')
Amanda_hits_train['TotLandsX1']=Amanda_hits_train['TotLandsX1'].map(class_mapping)
Amanda_hits_train.head()
## TotLandsX1
## 5 0
## 105 0
## 75 0
## 130 0
## 323 2
Amanda_train.shape
## (314, 93)
RStudio isn’t recognizing the module ‘tensorflow’ in my python environment named python36. This portion of the neural nets will stop here, because tensorflow isn’t being recognized, even though ‘pip list’ in the conda environment says it is a module available and my modules. Reinstalling tensorflow had no change to this error. We aren’t really using tensorflow, but keras. I switched to Keras, but had to change the user ‘Documents’ folder of ‘.keras’ in the text file to ‘theano’ instead of ‘tensorflow’ to use this version of Keras instead of the TensorFlow version. Change this back if using tensorflow within Jupyter Notebook as it has worked there without problems. This is a recent problem that wasn’t an issue 2 weeks ago. I also installed Tableau Public Desktop recently that could have interfered with tensorflow. Keras isn’t working either inside RStudio using reticulate as a wrapper for python. The message said to install a compiler and it was done, but still not working.
import tensorflow as tf
import tensorflow.contrib.keras as keras
#optionally use import tensorflow.keras as keras when no longer experimental contributor package development
#import keras
np.random.seed(123)
tf.set_random_seed(123)
model6 = keras.models.Sequential()
model6.add(
keras.layers.Dense(
units=200, #output units need to match next layer inputs
input_dim=93, #number of features for input above says 93
kernel_initializer='glorot_uniform',# name of the guy behind Xavier Initialization; the biases to zero
bias_initializer='zeros',
activation='tanh'))
## WARNING: Logging before flag parsing goes to stderr.
## W0530 15:03:42.690674 1140 deprecation.py:506] From C:\Users\m\Anaconda2\envs\python36\lib\site-packages\tensorflow\python\ops\init_ops.py:1251: calling VarianceScaling.__init__ (from tensorflow.python.ops.init_ops) with dtype is deprecated and will be removed in a future version.
## Instructions for updating:
## Call initializer instance with the dtype argument instead of passing it to the constructor
model6.add(
keras.layers.Dense(
units=100, #output matches next layer input
input_dim=200, #input matches last layer's output
kernel_initializer='glorot_uniform',
bias_initializer='zeros',
activation='tanh'))
model6.add(
keras.layers.Dense(
units=4, #these are the number of class categories in our target
input_dim=100,
kernel_initializer='glorot_uniform',
bias_initializer='zeros',
activation='softmax'))#will return the class membership probs summing to 1 of all class probs
# these are hyperparameters that can be tuned if overfitting during training, or to get better accuracy
sgd_optimizer = keras.optimizers.SGD(
lr=0.001, decay=1e-7, momentum=.8)
# categorical_crossentropy is used in multiclass classification instead of binary_crossentropy
# to match the softmax function
model6.compile(optimizer=sgd_optimizer,
loss='sparse_categorical_crossentropy')
# it was 'categorical_crossentropy', but that expects binary matrices of 1s and 0s
# it said to use sparse_categorical_crossentropy
model6
## <tensorflow.python.keras.engine.sequential.Sequential object at 0x0000000035D31128>
import time
start=time.time()
history6 = model6.fit(Amanda_train, Amanda_hits_train,
batch_size=64, epochs=50,
verbose=1,
validation_split=0.15)
## Train on 266 samples, validate on 48 samples
## Epoch 1/50
##
## 64/266 [======>.......................] - ETA: 3s - loss: 2.3216
## 256/266 [===========================>..] - ETA: 0s - loss: 1.6612
## 266/266 [==============================] - 1s 5ms/sample - loss: 1.6403 - val_loss: 0.7896
## Epoch 2/50
##
## 64/266 [======>.......................] - ETA: 0s - loss: 0.6572
## 266/266 [==============================] - 0s 72us/sample - loss: 0.6082 - val_loss: 0.6908
## Epoch 3/50
##
## 64/266 [======>.......................] - ETA: 0s - loss: 0.6562
## 266/266 [==============================] - 0s 59us/sample - loss: 0.5399 - val_loss: 0.7093
## Epoch 4/50
##
## 64/266 [======>.......................] - ETA: 0s - loss: 0.6426
## 266/266 [==============================] - 0s 152us/sample - loss: 0.5323 - val_loss: 0.6999
## Epoch 5/50
##
## 64/266 [======>.......................] - ETA: 0s - loss: 0.5917
## 266/266 [==============================] - 0s 102us/sample - loss: 0.5139 - val_loss: 0.6881
## Epoch 6/50
##
## 64/266 [======>.......................] - ETA: 0s - loss: 0.6206
## 266/266 [==============================] - 0s 105us/sample - loss: 0.5109 - val_loss: 0.6862
## Epoch 7/50
##
## 64/266 [======>.......................] - ETA: 0s - loss: 0.4069
## 266/266 [==============================] - 0s 145us/sample - loss: 0.5077 - val_loss: 0.6887
## Epoch 8/50
##
## 64/266 [======>.......................] - ETA: 0s - loss: 0.4002
## 266/266 [==============================] - 0s 59us/sample - loss: 0.5069 - val_loss: 0.6914
## Epoch 9/50
##
## 64/266 [======>.......................] - ETA: 0s - loss: 0.3419
## 266/266 [==============================] - 0s 152us/sample - loss: 0.5018 - val_loss: 0.6891
## Epoch 10/50
##
## 64/266 [======>.......................] - ETA: 0s - loss: 0.4169
## 266/266 [==============================] - 0s 83us/sample - loss: 0.4978 - val_loss: 0.6878
## Epoch 11/50
##
## 64/266 [======>.......................] - ETA: 0s - loss: 0.5791
## 266/266 [==============================] - 0s 98us/sample - loss: 0.4977 - val_loss: 0.6849
## Epoch 12/50
##
## 64/266 [======>.......................] - ETA: 0s - loss: 0.6414
## 266/266 [==============================] - 0s 90us/sample - loss: 0.4971 - val_loss: 0.6860
## Epoch 13/50
##
## 64/266 [======>.......................] - ETA: 0s - loss: 0.5462
## 266/266 [==============================] - 0s 31us/sample - loss: 0.4943 - val_loss: 0.6917
## Epoch 14/50
##
## 64/266 [======>.......................] - ETA: 0s - loss: 0.3859
## 266/266 [==============================] - 0s 118us/sample - loss: 0.4969 - val_loss: 0.6904
## Epoch 15/50
##
## 64/266 [======>.......................] - ETA: 0s - loss: 0.3633
## 266/266 [==============================] - 0s 100us/sample - loss: 0.4922 - val_loss: 0.6888
## Epoch 16/50
##
## 64/266 [======>.......................] - ETA: 0s - loss: 0.4594
## 266/266 [==============================] - 0s 117us/sample - loss: 0.4926 - val_loss: 0.6926
## Epoch 17/50
##
## 64/266 [======>.......................] - ETA: 0s - loss: 0.3839
## 266/266 [==============================] - 0s 94us/sample - loss: 0.4902 - val_loss: 0.7001
## Epoch 18/50
##
## 64/266 [======>.......................] - ETA: 0s - loss: 0.6349
## 266/266 [==============================] - 0s 90us/sample - loss: 0.4902 - val_loss: 0.6943
## Epoch 19/50
##
## 64/266 [======>.......................] - ETA: 0s - loss: 0.3777
## 266/266 [==============================] - 0s 24us/sample - loss: 0.4870 - val_loss: 0.6960
## Epoch 20/50
##
## 64/266 [======>.......................] - ETA: 0s - loss: 0.4897
## 266/266 [==============================] - 0s 117us/sample - loss: 0.4855 - val_loss: 0.6958
## Epoch 21/50
##
## 64/266 [======>.......................] - ETA: 0s - loss: 0.4259
## 266/266 [==============================] - 0s 118us/sample - loss: 0.4844 - val_loss: 0.6943
## Epoch 22/50
##
## 64/266 [======>.......................] - ETA: 0s - loss: 0.4115
## 266/266 [==============================] - 0s 76us/sample - loss: 0.4896 - val_loss: 0.6980
## Epoch 23/50
##
## 64/266 [======>.......................] - ETA: 0s - loss: 0.3734
## 266/266 [==============================] - 0s 59us/sample - loss: 0.4916 - val_loss: 0.6935
## Epoch 24/50
##
## 64/266 [======>.......................] - ETA: 0s - loss: 0.4799
## 266/266 [==============================] - 0s 140us/sample - loss: 0.4893 - val_loss: 0.6960
## Epoch 25/50
##
## 64/266 [======>.......................] - ETA: 0s - loss: 0.5330
## 266/266 [==============================] - 0s 79us/sample - loss: 0.4837 - val_loss: 0.6977
## Epoch 26/50
##
## 64/266 [======>.......................] - ETA: 0s - loss: 0.5831
## 266/266 [==============================] - 0s 90us/sample - loss: 0.4830 - val_loss: 0.6953
## Epoch 27/50
##
## 64/266 [======>.......................] - ETA: 0s - loss: 0.5044
## 266/266 [==============================] - 0s 98us/sample - loss: 0.4819 - val_loss: 0.6945
## Epoch 28/50
##
## 64/266 [======>.......................] - ETA: 0s - loss: 0.5583
## 266/266 [==============================] - 0s 30us/sample - loss: 0.4805 - val_loss: 0.6953
## Epoch 29/50
##
## 64/266 [======>.......................] - ETA: 0s - loss: 0.4711
## 266/266 [==============================] - 0s 130us/sample - loss: 0.4789 - val_loss: 0.6899
## Epoch 30/50
##
## 64/266 [======>.......................] - ETA: 0s - loss: 0.5352
## 266/266 [==============================] - 0s 102us/sample - loss: 0.4792 - val_loss: 0.6860
## Epoch 31/50
##
## 64/266 [======>.......................] - ETA: 0s - loss: 0.5689
## 266/266 [==============================] - 0s 90us/sample - loss: 0.4796 - val_loss: 0.6840
## Epoch 32/50
##
## 64/266 [======>.......................] - ETA: 0s - loss: 0.3534
## 266/266 [==============================] - 0s 75us/sample - loss: 0.4764 - val_loss: 0.6921
## Epoch 33/50
##
## 64/266 [======>.......................] - ETA: 0s - loss: 0.4219
## 266/266 [==============================] - 0s 94us/sample - loss: 0.4755 - val_loss: 0.6858
## Epoch 34/50
##
## 64/266 [======>.......................] - ETA: 0s - loss: 0.4076
## 266/266 [==============================] - 0s 65us/sample - loss: 0.4746 - val_loss: 0.6853
## Epoch 35/50
##
## 64/266 [======>.......................] - ETA: 0s - loss: 0.4912
## 266/266 [==============================] - 0s 59us/sample - loss: 0.4725 - val_loss: 0.6809
## Epoch 36/50
##
## 64/266 [======>.......................] - ETA: 0s - loss: 0.5236
## 266/266 [==============================] - 0s 59us/sample - loss: 0.4751 - val_loss: 0.6809
## Epoch 37/50
##
## 64/266 [======>.......................] - ETA: 0s - loss: 0.4648
## 266/266 [==============================] - 0s 176us/sample - loss: 0.4745 - val_loss: 0.6856
## Epoch 38/50
##
## 64/266 [======>.......................] - ETA: 0s - loss: 0.5471
## 266/266 [==============================] - 0s 83us/sample - loss: 0.4774 - val_loss: 0.6838
## Epoch 39/50
##
## 64/266 [======>.......................] - ETA: 0s - loss: 0.4356
## 266/266 [==============================] - 0s 75us/sample - loss: 0.4747 - val_loss: 0.6780
## Epoch 40/50
##
## 64/266 [======>.......................] - ETA: 0s - loss: 0.5387
## 266/266 [==============================] - 0s 102us/sample - loss: 0.4724 - val_loss: 0.6892
## Epoch 41/50
##
## 64/266 [======>.......................] - ETA: 0s - loss: 0.4527
## 266/266 [==============================] - 0s 73us/sample - loss: 0.4751 - val_loss: 0.6920
## Epoch 42/50
##
## 64/266 [======>.......................] - ETA: 0s - loss: 0.4359
## 266/266 [==============================] - 0s 91us/sample - loss: 0.4734 - val_loss: 0.6875
## Epoch 43/50
##
## 64/266 [======>.......................] - ETA: 0s - loss: 0.4552
## 266/266 [==============================] - 0s 109us/sample - loss: 0.4762 - val_loss: 0.6852
## Epoch 44/50
##
## 64/266 [======>.......................] - ETA: 0s - loss: 0.5144
## 266/266 [==============================] - 0s 50us/sample - loss: 0.4748 - val_loss: 0.6795
## Epoch 45/50
##
## 64/266 [======>.......................] - ETA: 0s - loss: 0.4615
## 266/266 [==============================] - 0s 59us/sample - loss: 0.4695 - val_loss: 0.6804
## Epoch 46/50
##
## 64/266 [======>.......................] - ETA: 0s - loss: 0.3914
## 266/266 [==============================] - 0s 120us/sample - loss: 0.4699 - val_loss: 0.6815
## Epoch 47/50
##
## 64/266 [======>.......................] - ETA: 0s - loss: 0.5914
## 266/266 [==============================] - 0s 105us/sample - loss: 0.4702 - val_loss: 0.6806
## Epoch 48/50
##
## 64/266 [======>.......................] - ETA: 0s - loss: 0.2354
## 266/266 [==============================] - 0s 30us/sample - loss: 0.4691 - val_loss: 0.6776
## Epoch 49/50
##
## 64/266 [======>.......................] - ETA: 0s - loss: 0.5044
## 266/266 [==============================] - 0s 233us/sample - loss: 0.4681 - val_loss: 0.6766
## Epoch 50/50
##
## 64/266 [======>.......................] - ETA: 0s - loss: 0.5858
## 266/266 [==============================] - 0s 79us/sample - loss: 0.4688 - val_loss: 0.6829
end=time.time()
fit_time=(end-start)
print(start,end,fit_time)
## 1590876223.1676922 1590876226.066078 2.898385763168335
y_train_pred6 = model6.predict_classes(Amanda_train, verbose=0)
print('First 3 predictions: ', y_train_pred6[:3])
## First 3 predictions: [0 0 0]
y_train_pred6 = model6.predict_classes(Amanda_train,
verbose=0)
y_train_pred6 = pd.DataFrame(y_train_pred6)
y_train_pred6.columns=['predicted']
y_train6 = Amanda_hits_train
y_train6 = pd.DataFrame(y_train6)
y_train6.columns=['ActualHitsLandedbyX1']
y_train_pred6.index=y_train6.index
Train6=pd.concat([y_train6['ActualHitsLandedbyX1'],y_train_pred6['predicted']],axis=1)
print(Train6)
## ActualHitsLandedbyX1 predicted
## 5 0 0
## 105 0 0
## 75 0 0
## 130 0 0
## 323 2 0
## .. ... ...
## 28 0 0
## 284 0 0
## 56 0 0
## 181 0 0
## 268 1 0
##
## [314 rows x 2 columns]
y_test_pred6 = model6.predict_classes(Amanda_test,
verbose=0)
y_test_pred6 = pd.DataFrame(y_test_pred6)
y_test_pred6.columns=['predicted']
y_test6 = Amanda_hits_test
y_test6 = pd.DataFrame(y_test6)
y_test6.columns=['ActualHitsLandedbyX1']
y_test_pred6.index=y_test6.index
Test6=pd.concat([y_test6['ActualHitsLandedbyX1'],y_test_pred6['predicted']],axis=1)
print(Test6)
## ActualHitsLandedbyX1 predicted
## 216 0 0
## 114 0 0
## 306 0 0
## 178 0 0
## 149 1 0
## .. ... ...
## 72 0 0
## 264 0 0
## 327 1 0
## 390 2 1
## 135 0 0
##
## [79 rows x 2 columns]
s = sum(Train6['ActualHitsLandedbyX1']==Train6['predicted'])
l = len(Train6['ActualHitsLandedbyX1'])
accTrain6 = s/l
print('Training Correctly Predicted:',s,'Training Accuracy:',accTrain6,'\n')
## Training Correctly Predicted: 264 Training Accuracy: 0.8407643312101911
print(confusion_matrix(Amanda_hits_train, y_train_pred6))
## [[257 5 0 0]
## [ 35 7 0 0]
## [ 9 0 0 0]
## [ 1 0 0 0]]
From the confusion matrix above, the rows=expected or actual, and columns are the predicted value. There were 5 zeros misclassified as 1s, 35 1s misclassified as 0s, 9 2s misclassified as 0s, and the only 3 was misclassified as 0. The precision for 0 is 257/(257+35+9+1) and the recall for 0s is 257/(257+5). The precision for 1 is 7/(7+5) and recall for 1 is 7/(7+35). The precision for 2 is 0/0 or NAN and recall for 2 is 0/9. The recall for 3 is 0/1 and the precision for 3 is 0/0 or NAN. At least the CNN accounted for the type 3 class.
s = sum(Test6['ActualHitsLandedbyX1']==Test6['predicted'])
l = len(Test6['ActualHitsLandedbyX1'])
accTest6 = s/l
print('Testing Correctly Predicted:',s,'Testing Accuracy:',accTest6)
## Testing Correctly Predicted: 62 Testing Accuracy: 0.7848101265822784
print(confusion_matrix(Amanda_hits_test, y_test_pred6))
## [[62 1 0]
## [12 0 0]
## [ 3 1 0]]
Since there weren’t any 3 classes in the testing set, the confusion matrix shows there is also no expected 3 or predicted 3. In the test set, the class 2 was expected to have 4 but they were misclassified as 3 class 0s and 1 class 1. There were expected to be 12 class 1s, but they were all misclassified as class 0. For class 0, only 1 was misclassified as a class 1.
In accuracy of prediction for this data, the CNN algorithm takes longer to build, train, and is less accurate in prediction than all algorithms from the R and Python available modules and packages. But CNNs did show the class 3 in training. And we must also note, that the added wrestling features for this data could have greatly skewed the results because by not having that information or having it a zero when in fact the other 3 fighters did have ground work or wrestling with Amanda. We could retry this CNN but only using the data for Amanda’s fight with Germaine. We excluded the notes field with Germaine to extract that subset when reading in the data. But we know it can be found by extracting it within R and using those indices before permutating the indices and partitioning the testing and training sets.
AmandaWrestling <- Table10[Table10$Notes=='Germaine',]
dim(AmandaWrestling)
## [1] 231 210
head(AmandaWrestling[1:5,20:22])
## Notes Crossl.X1 Kneel.X1
## 1 Germaine 0 0
## 2 Germaine 0 0
## 3 Germaine 0 0
## 4 Germaine 0 0
## 5 Germaine 0 0
Amanda3 = pd.read_csv('Amanda_ml_ready.csv', encoding = 'unicode_escape')
print(Amanda.shape)
## (393, 93)
Amanda4 = Amanda3[:231]
Amanda4.shape
## (231, 93)
import numpy as np
Amanda4 = Amanda4.reindex(np.random.permutation(Amanda4.index))
print(Amanda4.head())
## SecondsIntoRound lastAction ... totalMuayThaiKicksX1 totalMuayThaiKicksX2
## 67 127 126 ... 5 4
## 208 272 271 ... 5 4
## 124 188 187 ... 5 4
## 120 184 183 ... 5 4
## 107 171 170 ... 5 4
##
## [5 rows x 93 columns]
Split/splice into training ~ 80% and testing ~ 20%. With 231 samples, 80% is about 184.
Amanda_train = Amanda4[:184]
Amanda_test = Amanda4[184:]
Amanda_hits_train = Amanda4['TotLandsX1'][:184]
Amanda_hits_test = Amanda4['TotLandsX1'][184:]
print(Amanda_train.shape)
## (184, 93)
print(Amanda_test.shape)
## (47, 93)
Now we can run our CNN on this data that isn’t missing information.
Amanda_train['TotLandsX1'].unique()
## array([0, 1, 2, 3], dtype=int64)
Amanda_test['TotLandsX1'].unique()
## array([0, 2, 1], dtype=int64)
Aside: The fight with Germaine is the fight with 3 hits landed by Amanda. This was when on the ground, it looked like a possible TKO or technical knockout, but the referee didn’t call it. Many hits were being landed by Amanda. She was hit in the face with a high knee in the stand up part of this round before going to the ground. Germaine stayed in the round and fight longer by having the open guard that she tried using her feet to kick off Amanda who pushed her legs aside and was able to land some hits, many hits in fact.
Amanda_hits_train=pd.DataFrame(Amanda_hits_train)
Amanda_hits_train.columns=['TotLandsX1']
Amanda_hits_train.columns
## Index(['TotLandsX1'], dtype='object')
class_mapping = {label: idx for idx, label in enumerate(np.unique(Amanda4['TotLandsX1']))}
class_mapping
## {0: 0, 1: 1, 2: 2, 3: 3}
Amanda_hits_train['TotLandsX1']=Amanda_hits_train['TotLandsX1'].map(class_mapping)
Amanda_hits_train.head()
## TotLandsX1
## 67 0
## 208 0
## 124 0
## 120 0
## 107 0
Amanda_train.shape
## (184, 93)
import tensorflow as tf
import tensorflow.contrib.keras as keras
#optionally use import tensorflow.keras as keras when no longer experimental contributor package development
#import keras
np.random.seed(123)
tf.set_random_seed(123)
model6 = keras.models.Sequential()
model6.add(
keras.layers.Dense(
units=200, #output units need to match next layer inputs
input_dim=93, #number of features for input above says 93
kernel_initializer='glorot_uniform',# name of the guy behind Xavier Initialization; the biases to zero
bias_initializer='zeros',
activation='tanh'))
model6.add(
keras.layers.Dense(
units=100, #output matches next layer input
input_dim=200, #input matches last layer's output
kernel_initializer='glorot_uniform',
bias_initializer='zeros',
activation='tanh'))
model6.add(
keras.layers.Dense(
units=4, #these are the number of class categories in our target
input_dim=100,
kernel_initializer='glorot_uniform',
bias_initializer='zeros',
activation='softmax'))#will return the class membership probs summing to 1 of all class probs
# these are hyperparameters that can be tuned if overfitting during training, or to get better accuracy
sgd_optimizer = keras.optimizers.SGD(
lr=0.001, decay=1e-7, momentum=.8)
# categorical_crossentropy is used in multiclass classification instead of binary_crossentropy
# to match the softmax function
model6.compile(optimizer=sgd_optimizer,
loss='sparse_categorical_crossentropy')
# it was 'categorical_crossentropy', but that expects binary matrices of 1s and 0s
# it said to use sparse_categorical_crossentropy
model6
## <tensorflow.python.keras.engine.sequential.Sequential object at 0x0000000049270C18>
import time
start=time.time()
history6 = model6.fit(Amanda_train, Amanda_hits_train,
batch_size=64, epochs=50,
verbose=1,
validation_split=0.15)
## Train on 156 samples, validate on 28 samples
## Epoch 1/50
##
## 64/156 [===========>..................] - ETA: 1s - loss: 2.5702
## 156/156 [==============================] - 1s 6ms/sample - loss: 2.0680 - val_loss: 1.0677
## Epoch 2/50
##
## 64/156 [===========>..................] - ETA: 0s - loss: 1.0903
## 156/156 [==============================] - 0s 239us/sample - loss: 0.9068 - val_loss: 0.5537
## Epoch 3/50
##
## 64/156 [===========>..................] - ETA: 0s - loss: 0.6217
## 156/156 [==============================] - 0s 103us/sample - loss: 0.6735 - val_loss: 0.4622
## Epoch 4/50
##
## 64/156 [===========>..................] - ETA: 0s - loss: 0.4363
## 156/156 [==============================] - 0s 96us/sample - loss: 0.6431 - val_loss: 0.4344
## Epoch 5/50
##
## 64/156 [===========>..................] - ETA: 0s - loss: 0.5693
## 156/156 [==============================] - 0s 122us/sample - loss: 0.6216 - val_loss: 0.4115
## Epoch 6/50
##
## 64/156 [===========>..................] - ETA: 0s - loss: 0.5524
## 156/156 [==============================] - 0s 109us/sample - loss: 0.5935 - val_loss: 0.3891
## Epoch 7/50
##
## 64/156 [===========>..................] - ETA: 0s - loss: 0.6715
## 156/156 [==============================] - 0s 96us/sample - loss: 0.5805 - val_loss: 0.3841
## Epoch 8/50
##
## 64/156 [===========>..................] - ETA: 0s - loss: 0.4604
## 156/156 [==============================] - 0s 90us/sample - loss: 0.5715 - val_loss: 0.3788
## Epoch 9/50
##
## 64/156 [===========>..................] - ETA: 0s - loss: 0.5023
## 156/156 [==============================] - 0s 90us/sample - loss: 0.5644 - val_loss: 0.3748
## Epoch 10/50
##
## 64/156 [===========>..................] - ETA: 0s - loss: 0.4562
## 156/156 [==============================] - 0s 141us/sample - loss: 0.5614 - val_loss: 0.3732
## Epoch 11/50
##
## 64/156 [===========>..................] - ETA: 0s - loss: 0.5183
## 156/156 [==============================] - 0s 90us/sample - loss: 0.5573 - val_loss: 0.3756
## Epoch 12/50
##
## 64/156 [===========>..................] - ETA: 0s - loss: 0.4964
## 156/156 [==============================] - 0s 96us/sample - loss: 0.5555 - val_loss: 0.3760
## Epoch 13/50
##
## 64/156 [===========>..................] - ETA: 0s - loss: 0.5126
## 156/156 [==============================] - 0s 90us/sample - loss: 0.5503 - val_loss: 0.3736
## Epoch 14/50
##
## 64/156 [===========>..................] - ETA: 0s - loss: 0.6670
## 156/156 [==============================] - 0s 83us/sample - loss: 0.5505 - val_loss: 0.3720
## Epoch 15/50
##
## 64/156 [===========>..................] - ETA: 0s - loss: 0.5387
## 156/156 [==============================] - 0s 140us/sample - loss: 0.5461 - val_loss: 0.3692
## Epoch 16/50
##
## 64/156 [===========>..................] - ETA: 0s - loss: 0.4884
## 156/156 [==============================] - 0s 96us/sample - loss: 0.5494 - val_loss: 0.3669
## Epoch 17/50
##
## 64/156 [===========>..................] - ETA: 0s - loss: 0.4133
## 156/156 [==============================] - 0s 0s/sample - loss: 0.5435 - val_loss: 0.3657
## Epoch 18/50
##
## 64/156 [===========>..................] - ETA: 0s - loss: 0.5762
## 156/156 [==============================] - 0s 215us/sample - loss: 0.5436 - val_loss: 0.3708
## Epoch 19/50
##
## 64/156 [===========>..................] - ETA: 0s - loss: 0.6018
## 156/156 [==============================] - 0s 128us/sample - loss: 0.5406 - val_loss: 0.3730
## Epoch 20/50
##
## 64/156 [===========>..................] - ETA: 0s - loss: 0.5129
## 156/156 [==============================] - 0s 83us/sample - loss: 0.5417 - val_loss: 0.3741
## Epoch 21/50
##
## 64/156 [===========>..................] - ETA: 0s - loss: 0.5345
## 156/156 [==============================] - 0s 100us/sample - loss: 0.5391 - val_loss: 0.3680
## Epoch 22/50
##
## 64/156 [===========>..................] - ETA: 0s - loss: 0.6523
## 156/156 [==============================] - 0s 100us/sample - loss: 0.5408 - val_loss: 0.3697
## Epoch 23/50
##
## 64/156 [===========>..................] - ETA: 0s - loss: 0.5544
## 156/156 [==============================] - 0s 144us/sample - loss: 0.5372 - val_loss: 0.3716
## Epoch 24/50
##
## 64/156 [===========>..................] - ETA: 0s - loss: 0.5954
## 156/156 [==============================] - 0s 115us/sample - loss: 0.5381 - val_loss: 0.3716
## Epoch 25/50
##
## 64/156 [===========>..................] - ETA: 0s - loss: 0.5523
## 156/156 [==============================] - 0s 96us/sample - loss: 0.5353 - val_loss: 0.3702
## Epoch 26/50
##
## 64/156 [===========>..................] - ETA: 0s - loss: 0.5646
## 156/156 [==============================] - 0s 90us/sample - loss: 0.5330 - val_loss: 0.3708
## Epoch 27/50
##
## 64/156 [===========>..................] - ETA: 0s - loss: 0.5180
## 156/156 [==============================] - 0s 83us/sample - loss: 0.5349 - val_loss: 0.3667
## Epoch 28/50
##
## 64/156 [===========>..................] - ETA: 0s - loss: 0.3924
## 156/156 [==============================] - 0s 141us/sample - loss: 0.5330 - val_loss: 0.3652
## Epoch 29/50
##
## 64/156 [===========>..................] - ETA: 0s - loss: 0.5558
## 156/156 [==============================] - 0s 73us/sample - loss: 0.5324 - val_loss: 0.3675
## Epoch 30/50
##
## 64/156 [===========>..................] - ETA: 0s - loss: 0.3242
## 156/156 [==============================] - 0s 100us/sample - loss: 0.5337 - val_loss: 0.3700
## Epoch 31/50
##
## 64/156 [===========>..................] - ETA: 0s - loss: 0.5147
## 156/156 [==============================] - 0s 0s/sample - loss: 0.5315 - val_loss: 0.3726
## Epoch 32/50
##
## 64/156 [===========>..................] - ETA: 0s - loss: 0.4621
## 156/156 [==============================] - 0s 173us/sample - loss: 0.5304 - val_loss: 0.3735
## Epoch 33/50
##
## 64/156 [===========>..................] - ETA: 0s - loss: 0.5862
## 156/156 [==============================] - 0s 128us/sample - loss: 0.5290 - val_loss: 0.3704
## Epoch 34/50
##
## 64/156 [===========>..................] - ETA: 0s - loss: 0.5567
## 156/156 [==============================] - 0s 103us/sample - loss: 0.5277 - val_loss: 0.3713
## Epoch 35/50
##
## 64/156 [===========>..................] - ETA: 0s - loss: 0.5751
## 156/156 [==============================] - 0s 90us/sample - loss: 0.5278 - val_loss: 0.3700
## Epoch 36/50
##
## 64/156 [===========>..................] - ETA: 0s - loss: 0.5606
## 156/156 [==============================] - 0s 83us/sample - loss: 0.5262 - val_loss: 0.3649
## Epoch 37/50
##
## 64/156 [===========>..................] - ETA: 0s - loss: 0.4248
## 156/156 [==============================] - 0s 90us/sample - loss: 0.5265 - val_loss: 0.3639
## Epoch 38/50
##
## 64/156 [===========>..................] - ETA: 0s - loss: 0.4106
## 156/156 [==============================] - 0s 147us/sample - loss: 0.5238 - val_loss: 0.3683
## Epoch 39/50
##
## 64/156 [===========>..................] - ETA: 0s - loss: 0.5278
## 156/156 [==============================] - 0s 46us/sample - loss: 0.5240 - val_loss: 0.3689
## Epoch 40/50
##
## 64/156 [===========>..................] - ETA: 0s - loss: 0.5179
## 156/156 [==============================] - 0s 100us/sample - loss: 0.5230 - val_loss: 0.3717
## Epoch 41/50
##
## 64/156 [===========>..................] - ETA: 0s - loss: 0.4725
## 156/156 [==============================] - 0s 100us/sample - loss: 0.5233 - val_loss: 0.3713
## Epoch 42/50
##
## 64/156 [===========>..................] - ETA: 0s - loss: 0.5310
## 156/156 [==============================] - 0s 144us/sample - loss: 0.5217 - val_loss: 0.3695
## Epoch 43/50
##
## 64/156 [===========>..................] - ETA: 0s - loss: 0.5672
## 156/156 [==============================] - 0s 115us/sample - loss: 0.5236 - val_loss: 0.3683
## Epoch 44/50
##
## 64/156 [===========>..................] - ETA: 0s - loss: 0.6168
## 156/156 [==============================] - 0s 90us/sample - loss: 0.5242 - val_loss: 0.3742
## Epoch 45/50
##
## 64/156 [===========>..................] - ETA: 0s - loss: 0.5781
## 156/156 [==============================] - 0s 90us/sample - loss: 0.5198 - val_loss: 0.3723
## Epoch 46/50
##
## 64/156 [===========>..................] - ETA: 0s - loss: 0.4753
## 156/156 [==============================] - 0s 83us/sample - loss: 0.5255 - val_loss: 0.3700
## Epoch 47/50
##
## 64/156 [===========>..................] - ETA: 0s - loss: 0.4673
## 156/156 [==============================] - 0s 128us/sample - loss: 0.5178 - val_loss: 0.3753
## Epoch 48/50
##
## 64/156 [===========>..................] - ETA: 0s - loss: 0.5357
## 156/156 [==============================] - 0s 83us/sample - loss: 0.5246 - val_loss: 0.3785
## Epoch 49/50
##
## 64/156 [===========>..................] - ETA: 0s - loss: 0.6369
## 156/156 [==============================] - 0s 14us/sample - loss: 0.5175 - val_loss: 0.3689
## Epoch 50/50
##
## 64/156 [===========>..................] - ETA: 0s - loss: 0.4764
## 156/156 [==============================] - 0s 100us/sample - loss: 0.5250 - val_loss: 0.3640
end=time.time()
fit_time=(end-start)
print(start,end,fit_time)
## 1590876229.5811665 1590876231.8449244 2.2637579441070557
y_train_pred6 = model6.predict_classes(Amanda_train, verbose=0)
print('First 3 predictions: ', y_train_pred6[:3])
## First 3 predictions: [0 0 0]
y_train_pred6 = model6.predict_classes(Amanda_train,
verbose=0)
y_train_pred6 = pd.DataFrame(y_train_pred6)
y_train_pred6.columns=['predicted']
y_train6 = Amanda_hits_train
y_train6 = pd.DataFrame(y_train6)
y_train6.columns=['ActualHitsLandedbyX1']
y_train_pred6.index=y_train6.index
Train6=pd.concat([y_train6['ActualHitsLandedbyX1'],y_train_pred6['predicted']],axis=1)
print(Train6)
## ActualHitsLandedbyX1 predicted
## 67 0 0
## 208 0 0
## 124 0 0
## 120 0 0
## 107 0 0
## .. ... ...
## 228 0 0
## 47 0 0
## 20 0 0
## 173 1 0
## 27 0 0
##
## [184 rows x 2 columns]
y_test_pred6 = model6.predict_classes(Amanda_test,
verbose=0)
y_test_pred6 = pd.DataFrame(y_test_pred6)
y_test_pred6.columns=['predicted']
y_test6 = Amanda_hits_test
y_test6 = pd.DataFrame(y_test6)
y_test6.columns=['ActualHitsLandedbyX1']
y_test_pred6.index=y_test6.index
Test6=pd.concat([y_test6['ActualHitsLandedbyX1'],y_test_pred6['predicted']],axis=1)
print(Test6)
## ActualHitsLandedbyX1 predicted
## 23 0 0
## 197 0 0
## 125 0 0
## 134 0 0
## 37 0 0
## 181 0 0
## 190 0 0
## 46 0 0
## 16 0 0
## 217 0 0
## 111 0 0
## 105 0 0
## 166 2 0
## 161 1 0
## 97 0 0
## 200 0 0
## 58 0 0
## 55 0 0
## 168 0 0
## 21 0 0
## 227 0 0
## 149 1 0
## 174 2 0
## 30 0 0
## 207 0 0
## 186 0 0
## 64 0 0
## 185 0 0
## 44 0 0
## 118 0 0
## 63 0 0
## 163 1 0
## 35 0 0
## 59 0 0
## 199 0 0
## 18 0 0
## 209 0 0
## 143 0 0
## 147 0 0
## 60 0 0
## 96 0 0
## 101 0 0
## 154 2 0
## 210 1 0
## 187 0 0
## 150 1 0
## 116 0 0
s = sum(Train6['ActualHitsLandedbyX1']==Train6['predicted'])
l = len(Train6['ActualHitsLandedbyX1'])
accTrain6 = s/l
print('Training Correctly Predicted:',s,'Training Accuracy:',accTrain6,'\n')
## Training Correctly Predicted: 154 Training Accuracy: 0.8369565217391305
print(confusion_matrix(Amanda_hits_train, y_train_pred6))
## [[154 1 0 0]
## [ 22 0 0 0]
## [ 6 0 0 0]
## [ 1 0 0 0]]
s = sum(Test6['ActualHitsLandedbyX1']==Test6['predicted'])
l = len(Test6['ActualHitsLandedbyX1'])
accTest6 = s/l
print('Testing Correctly Predicted:',s,'Testing Accuracy:',accTest6)
## Testing Correctly Predicted: 39 Testing Accuracy: 0.8297872340425532
print(confusion_matrix(Amanda_hits_test, y_test_pred6))
## [[39 0 0]
## [ 5 0 0]
## [ 3 0 0]]
When using the wrestling set applicable to only the fighter whose ground or wrestling features were accounted for, the testing accuracy improved from 72% to 85% in predicting hits landed using the DNN or CNN alternatively named so.
In summary the best models were those that scored 100% accuracy in Python’s TensorFlow Keras version for the gradient boosting classifier. In R the best models were the modified boundaries that were rounded to nearest class numeric value for hits landed by X1 on X2. Those R modules scored 100% for random forest, generalized linear models, and recursive partitioned trees. The gradient boosted model in R scored 96%. The caveat is that class 3 in our data only occured 1 time in all and was captured in the CNN model but not in our models that scored 100% in either scripting language. However, the recall and precision were 100% accurate for that class 3 in those models.
Lets now do some predictive text analysis of this fighter Nunez that will use the notes of Nunez’s four fights with NAs removed to fit the format from a script in Sebastian Raschka’s ‘Python: Machine Learning’ book available for Kindle. One will work similar to the CNN by predicting the output of hits landed based on the actions only, and the other will use a text version of all actions to predict the probability of characters next in a sequence for some forecasting of possible actions that Nunez will make based on her sampled fights.
Lets first prepare the data.
Amanda4 <- read.csv('Nunez4fights_addedFeatures.csv', sep=',', header=TRUE, na.strings=c('',' ','NA'))
Amanda4RNN <- Amanda4[,c(18,8)]
colnames(Amanda4RNN) <- c('review','sentiment')
Amanda_RNN <- Amanda4RNN[complete.cases(Amanda4RNN$review),]
head(Amanda_RNN)
## review sentiment
## 1 missed R mt kick to low L leg 0
## 2 missed L jab 0
## 4 missed R mt kick to low L leg 0
## 5 lands L mt kick to L leg 1
## 6 missed L jab, missed R cross 0
## 7 lands L mt kick to L leg, missed R cross to face 1
dim(Amanda_RNN)
## [1] 360 2
Our table for the RNN to predict the hits landed or ‘sentiment’ to match this script of Raschka’s will be the Amands_RNN table. Lets make the string character of all the ‘review’ observations which are our fighter actions/reactions for Nunez also changed to match this script into one long string for the predictive test script after we train this RNN model. This will be set to eval=FALSE in Rmarkdown for the chunk setting so that it only prints once.
for (i in Amanda_RNN$review){
catAmanda <- cat(i, file='amandaRNN.txt', sep=' ', fill=TRUE, append=TRUE)
}
write.csv(Amanda_RNN,'amanda_RNN.csv', row.names=FALSE)
The above will create our file to read in when we get to the predictive text script, ‘amandaRNN.txt.’
library(reticulate)
conda_list(conda = "auto")
## name python
## 1 Anaconda2 C:\\Users\\m\\Anaconda2\\python.exe
## 2 djangoenv C:\\Users\\m\\Anaconda2\\envs\\djangoenv\\python.exe
## 3 python36 C:\\Users\\m\\Anaconda2\\envs\\python36\\python.exe
## 4 python37 C:\\Users\\m\\Anaconda2\\envs\\python37\\python.exe
## 5 r-reticulate C:\\Users\\m\\Anaconda2\\envs\\r-reticulate\\python.exe
use_condaenv(condaenv = "python36")
We are using the same Felicia Spencer data file, but changed the name of TotLandsX1 to sentiment, and the name of the FighterActionsReactionsX1 to review. This file is also in github, modified outside of R and Python as ‘2columnsSpencer.csv’ and the NAs were also removed.
import pyprind
import pandas as pd
from string import punctuation
import re
import numpy as np
df = pd.read_csv('amanda_RNN.csv', encoding='utf-8')
print(df.head(10))
## review sentiment
## 0 missed R mt kick to low L leg 0
## 1 missed L jab 0
## 2 missed R mt kick to low L leg 0
## 3 lands L mt kick to L leg 1
## 4 missed L jab, missed R cross 0
## 5 lands L mt kick to L leg, missed R cross to face 1
## 6 holding R leg hold starts 0
## 7 holding R leg hold continues 0
## 8 holding R leg hold continues 0
## 9 holding R leg hold continues misses R cross to... 0
df.shape
## (360, 2)
type(df['review'])
## <class 'pandas.core.series.Series'>
## Separate words and
## count each word's occurrence
from collections import Counter
counts = Counter()
pbar = pyprind.ProgBar(len(df['review']),
title='Counting words occurences')
## Counting words occurences
for i,review in enumerate(df['review']):
text = ''.join([c if c not in punctuation else ' '+c+' ' \
for c in review]).lower()
df.loc[i,'review'] = text
pbar.update()
counts.update(text.split())
##
0% [# ] 100% | ETA: 00:00:00
0% [## ] 100% | ETA: 00:00:00
0% [### ] 100% | ETA: 00:00:00
0% [#### ] 100% | ETA: 00:00:00
0% [##### ] 100% | ETA: 00:00:00
0% [###### ] 100% | ETA: 00:00:00
0% [####### ] 100% | ETA: 00:00:00
0% [######## ] 100% | ETA: 00:00:00
0% [######### ] 100% | ETA: 00:00:00
0% [########## ] 100% | ETA: 00:00:00
0% [########### ] 100% | ETA: 00:00:00
0% [############ ] 100% | ETA: 00:00:00
0% [############# ] 100% | ETA: 00:00:00
0% [############## ] 100% | ETA: 00:00:00
0% [############### ] 100% | ETA: 00:00:00
0% [################ ] 100% | ETA: 00:00:00
0% [################# ] 100% | ETA: 00:00:00
0% [################## ] 100% | ETA: 00:00:00
0% [################### ] 100% | ETA: 00:00:00
0% [#################### ] 100% | ETA: 00:00:00
0% [##################### ] 100% | ETA: 00:00:00
0% [###################### ] 100% | ETA: 00:00:00
0% [####################### ] 100% | ETA: 00:00:00
0% [######################## ] 100% | ETA: 00:00:00
0% [######################### ] 100% | ETA: 00:00:00
0% [########################## ] 100% | ETA: 00:00:00
0% [########################### ] 100% | ETA: 00:00:00
0% [############################ ] 100% | ETA: 00:00:00
0% [############################# ] 100% | ETA: 00:00:00
0% [##############################] 100% | ETA: 00:00:00
0% [##############################] 100% | ETA: 00:00:00
## Total time elapsed: 00:00:00
## Create a mapping:
## Map each unique word to an integer
word_counts = sorted(counts, key=counts.get, reverse=True)
print(word_counts[:5])
## ['hold', 'to', 'r', 'in', 'caught']
word_to_int = {word: ii for ii, word in enumerate(word_counts, 1)}
mapped_reviews = []
pbar = pyprind.ProgBar(len(df['review']),
title='Map reviews to ints')
## Map reviews to ints
for review in df['review']:
mapped_reviews.append([word_to_int[word] for word in review.split()])
pbar.update()
##
0% [# ] 100% | ETA: 00:00:00
0% [## ] 100% | ETA: 00:00:00
0% [### ] 100% | ETA: 00:00:00
0% [#### ] 100% | ETA: 00:00:00
0% [##### ] 100% | ETA: 00:00:00
0% [###### ] 100% | ETA: 00:00:00
0% [####### ] 100% | ETA: 00:00:00
0% [######## ] 100% | ETA: 00:00:00
0% [######### ] 100% | ETA: 00:00:00
0% [########## ] 100% | ETA: 00:00:00
0% [########### ] 100% | ETA: 00:00:00
0% [############ ] 100% | ETA: 00:00:00
0% [############# ] 100% | ETA: 00:00:00
0% [############## ] 100% | ETA: 00:00:00
0% [############### ] 100% | ETA: 00:00:00
0% [################ ] 100% | ETA: 00:00:00
0% [################# ] 100% | ETA: 00:00:00
0% [################## ] 100% | ETA: 00:00:00
0% [################### ] 100% | ETA: 00:00:00
0% [#################### ] 100% | ETA: 00:00:00
0% [##################### ] 100% | ETA: 00:00:00
0% [###################### ] 100% | ETA: 00:00:00
0% [####################### ] 100% | ETA: 00:00:00
0% [######################## ] 100% | ETA: 00:00:00
0% [######################### ] 100% | ETA: 00:00:00
0% [########################## ] 100% | ETA: 00:00:00
0% [########################### ] 100% | ETA: 00:00:00
0% [############################ ] 100% | ETA: 00:00:00
0% [############################# ] 100% | ETA: 00:00:00
0% [##############################] 100% | ETA: 00:00:00
0% [##############################] 100% | ETA: 00:00:00
## Total time elapsed: 00:00:00
len(mapped_reviews)
## 360
sequence_length = 200 ## sequence length (or T in our formulas)
sequences = np.zeros((len(mapped_reviews), sequence_length), dtype=int)
for i, row in enumerate(mapped_reviews):
review_arr = np.array(row)
sequences[i, -len(row):] = review_arr[-sequence_length:]
sequences.shape
## (360, 200)
## Define fixed-length sequences:
## Use the last 200 elements of each sequence
## if sequence length < 200: left-pad with zeros
sequence_length = 200 ## sequence length (or T in our formulas)
sequences = np.zeros((len(mapped_reviews), sequence_length), dtype=int)
for i, row in enumerate(mapped_reviews):
review_arr = np.array(row)
sequences[i, -len(row):] = review_arr[-sequence_length:]
X_train = sequences[:270, :]
y_train = df.loc[:270, 'sentiment'].values
X_test = sequences[270:, :]
#the number of samples has to be divisible exactly by batch size or predictions will be cut off, if test #samples are 147 and batch size 15, the predictions will only have 135 samples
y_test = df.loc[270:, 'sentiment'].values
np.random.seed(123) # for reproducibility
## Function to generate minibatches:
def create_batch_generator(x, y=None, batch_size=64):
n_batches = len(x)//batch_size
x= x[:n_batches*batch_size]
if y is not None:
y = y[:n_batches*batch_size]
for ii in range(0, len(x), batch_size):
if y is not None:
yield x[ii:ii+batch_size], y[ii:ii+batch_size]
else:
yield x[ii:ii+batch_size]
import tensorflow as tf
class SentimentRNN(object):
def __init__(self, n_words, seq_len=200,
lstm_size=256, num_layers=1, batch_size=64,
learning_rate=0.0001, embed_size=200):
self.n_words = n_words
self.seq_len = seq_len
self.lstm_size = lstm_size ## number of hidden units
self.num_layers = num_layers
self.batch_size = batch_size
self.learning_rate = learning_rate
self.embed_size = embed_size
self.g = tf.Graph()
with self.g.as_default():
tf.set_random_seed(123)
self.build()
self.saver = tf.train.Saver()
self.init_op = tf.global_variables_initializer()
def build(self):
## Define the placeholders
tf_x = tf.placeholder(tf.int32,
shape=(self.batch_size, self.seq_len),
name='tf_x')
tf_y = tf.placeholder(tf.float32,
shape=(self.batch_size),
name='tf_y')
tf_keepprob = tf.placeholder(tf.float32,
name='tf_keepprob')
## Create the embedding layer
embedding = tf.Variable(
tf.random_uniform(
(self.n_words, self.embed_size),
minval=-1, maxval=1),
name='embedding')
embed_x = tf.nn.embedding_lookup(
embedding, tf_x,
name='embeded_x')
## Define LSTM cell and stack them together
cells = tf.contrib.rnn.MultiRNNCell(
[tf.contrib.rnn.DropoutWrapper(
tf.contrib.rnn.BasicLSTMCell(self.lstm_size),
output_keep_prob=tf_keepprob)
for i in range(self.num_layers)])
## Define the initial state:
self.initial_state = cells.zero_state(
self.batch_size, tf.float32)
print(' << initial state >> ', self.initial_state)
lstm_outputs, self.final_state = tf.nn.dynamic_rnn(
cells, embed_x,
initial_state=self.initial_state)
## Note: lstm_outputs shape:
## [batch_size, max_time, cells.output_size]
print('\n << lstm_output >> ', lstm_outputs)
print('\n << final state >> ', self.final_state)
## Apply a FC layer after on top of RNN output:
logits = tf.layers.dense(
inputs=lstm_outputs[:, -1],
units=1, activation=None,
name='logits')
logits = tf.squeeze(logits, name='logits_squeezed')
print ('\n << logits >> ', logits)
y_proba = tf.nn.sigmoid(logits, name='probabilities')
predictions = {
'probabilities': y_proba,
'labels' : tf.cast(tf.round(y_proba), tf.int32,
name='labels')
}
print('\n << predictions >> ', predictions)
## Define the cost function
cost = tf.reduce_mean(
tf.nn.sigmoid_cross_entropy_with_logits(
labels=tf_y, logits=logits),
name='cost')
## Define the optimizer
optimizer = tf.train.AdamOptimizer(self.learning_rate)
train_op = optimizer.minimize(cost, name='train_op')
def train(self, X_train, y_train, num_epochs):
with tf.Session(graph=self.g) as sess:
sess.run(self.init_op)
iteration = 1
for epoch in range(num_epochs):
state = sess.run(self.initial_state)
for batch_x, batch_y in create_batch_generator(
X_train, y_train, self.batch_size):
feed = {'tf_x:0': batch_x,
'tf_y:0': batch_y,
'tf_keepprob:0': 0.5,
self.initial_state : state}
loss, _, state = sess.run(
['cost:0', 'train_op',
self.final_state],
feed_dict=feed)
if iteration % 20 == 0:
print("Epoch: %d/%d Iteration: %d "
"| Train loss: %.5f" % (
epoch + 1, num_epochs,
iteration, loss))
iteration +=1
if (epoch+1)%10 == 0:
self.saver.save(sess,
"model/sentiment-%d.ckpt" % epoch)
def predict(self, X_data, return_proba=False):
preds = []
with tf.Session(graph = self.g) as sess:
self.saver.restore(
sess, tf.train.latest_checkpoint('model/'))
test_state = sess.run(self.initial_state)
for ii, batch_x in enumerate(
create_batch_generator(
X_data, None, batch_size=self.batch_size), 1):
feed = {'tf_x:0' : batch_x,
'tf_keepprob:0': 1.0,
self.initial_state : test_state}
if return_proba:
pred, test_state = sess.run(
['probabilities:0', self.final_state],
feed_dict=feed)
else:
pred, test_state = sess.run(
['labels:0', self.final_state],
feed_dict=feed)
preds.append(pred)
return np.concatenate(preds)
## Train:
n_words = max(list(word_to_int.values())) + 1
rnn = SentimentRNN(n_words=n_words,
seq_len=sequence_length,
embed_size=256,
lstm_size=128,
num_layers=1,
# batch_size has to divide evenly into the number of testing set samples, or some samples will be removed
batch_size=10,
learning_rate=0.001)
## << initial state >> (LSTMStateTuple(c=<tf.Tensor 'MultiRNNCellZeroState/DropoutWrapperZeroState/BasicLSTMCellZeroState/zeros:0' shape=(10, 128) dtype=float32>, h=<tf.Tensor 'MultiRNNCellZeroState/DropoutWrapperZeroState/BasicLSTMCellZeroState/zeros_1:0' shape=(10, 128) dtype=float32>),)
##
## << lstm_output >> Tensor("rnn/transpose_1:0", shape=(10, 200, 128), dtype=float32)
##
## << final state >> (LSTMStateTuple(c=<tf.Tensor 'rnn/while/Exit_3:0' shape=(10, 128) dtype=float32>, h=<tf.Tensor 'rnn/while/Exit_4:0' shape=(10, 128) dtype=float32>),)
##
## << logits >> Tensor("logits_squeezed:0", shape=(10,), dtype=float32)
##
## << predictions >> {'probabilities': <tf.Tensor 'probabilities:0' shape=(10,) dtype=float32>, 'labels': <tf.Tensor 'labels:0' shape=(10,) dtype=int32>}
##
## W0530 15:04:19.324372 1140 deprecation.py:323] From <string>:45: BasicLSTMCell.__init__ (from tensorflow.python.ops.rnn_cell_impl) is deprecated and will be removed in a future version.
## Instructions for updating:
## This class is equivalent as tf.keras.layers.LSTMCell, and will be replaced by that in Tensorflow 2.0.
## W0530 15:04:19.332374 1140 deprecation.py:323] From <string>:45: MultiRNNCell.__init__ (from tensorflow.python.ops.rnn_cell_impl) is deprecated and will be removed in a future version.
## Instructions for updating:
## This class is equivalent as tf.keras.layers.StackedRNNCells, and will be replaced by that in Tensorflow 2.0.
## W0530 15:04:19.369856 1140 deprecation.py:323] From <string>:54: dynamic_rnn (from tensorflow.python.ops.rnn) is deprecated and will be removed in a future version.
## Instructions for updating:
## Please use `keras.layers.RNN(cell)`, which is equivalent to this API
## W0530 15:04:20.156065 1140 deprecation.py:506] From C:\Users\m\Anaconda2\envs\python36\lib\site-packages\tensorflow\python\ops\rnn_cell_impl.py:738: calling Zeros.__init__ (from tensorflow.python.ops.init_ops) with dtype is deprecated and will be removed in a future version.
## Instructions for updating:
## Call initializer instance with the dtype argument instead of passing it to the constructor
## W0530 15:04:21.017520 1140 deprecation.py:323] From <string>:64: dense (from tensorflow.python.layers.core) is deprecated and will be removed in a future version.
## Instructions for updating:
## Use keras.layers.dense instead.
## W0530 15:04:21.671442 1140 deprecation.py:323] From C:\Users\m\Anaconda2\envs\python36\lib\site-packages\tensorflow\python\ops\nn_impl.py:180: add_dispatch_support.<locals>.wrapper (from tensorflow.python.ops.array_ops) is deprecated and will be removed in a future version.
## Instructions for updating:
## Use tf.where in 2.0, which has the same broadcast rule as np.where
rnn.train(X_train, y_train, num_epochs=20)
## Epoch: 1/20 Iteration: 20 | Train loss: 0.12205
## Epoch: 2/20 Iteration: 40 | Train loss: 0.31215
## Epoch: 3/20 Iteration: 60 | Train loss: 0.01633
## Epoch: 3/20 Iteration: 80 | Train loss: 0.02581
## Epoch: 4/20 Iteration: 100 | Train loss: 0.01532
## Epoch: 5/20 Iteration: 120 | Train loss: 0.00603
## Epoch: 6/20 Iteration: 140 | Train loss: 0.01375
## Epoch: 6/20 Iteration: 160 | Train loss: 0.00513
## Epoch: 7/20 Iteration: 180 | Train loss: -1.83730
## Epoch: 8/20 Iteration: 200 | Train loss: 0.00155
## Epoch: 9/20 Iteration: 220 | Train loss: 0.00343
## Epoch: 9/20 Iteration: 240 | Train loss: 0.01742
## Epoch: 10/20 Iteration: 260 | Train loss: -2.78310
## Epoch: 11/20 Iteration: 280 | Train loss: 0.00013
## Epoch: 12/20 Iteration: 300 | Train loss: -2.87427
## Epoch: 12/20 Iteration: 320 | Train loss: 0.00028
## Epoch: 13/20 Iteration: 340 | Train loss: -8.36930
## Epoch: 14/20 Iteration: 360 | Train loss: -9.60454
## Epoch: 15/20 Iteration: 380 | Train loss: 0.00588
## Epoch: 15/20 Iteration: 400 | Train loss: 0.00005
## Epoch: 16/20 Iteration: 420 | Train loss: -6.87987
## Epoch: 17/20 Iteration: 440 | Train loss: 0.00016
## Epoch: 18/20 Iteration: 460 | Train loss: 0.00041
## Epoch: 18/20 Iteration: 480 | Train loss: 0.00051
## Epoch: 19/20 Iteration: 500 | Train loss: 0.00001
## Epoch: 20/20 Iteration: 520 | Train loss: 0.00010
## Epoch: 20/20 Iteration: 540 | Train loss: -4.01570
X_test.shape
## (90, 200)
y_test
## array([0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2, 0, 0,
## 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 2, 0, 0, 1, 0, 0, 0, 0, 0, 0,
## 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
## 1, 1, 0, 0, 1, 0, 1, 0, 1, 0, 0, 1, 1, 0, 0, 1, 1, 0, 1, 0, 1, 2,
## 1, 0], dtype=int64)
y_test.shape
## (90,)
X_test
## array([[ 0, 0, 0, ..., 8, 3, 10],
## [ 0, 0, 0, ..., 7, 31, 23],
## [ 0, 0, 0, ..., 7, 31, 23],
## ...,
## [ 0, 0, 0, ..., 10, 2, 11],
## [ 0, 0, 0, ..., 19, 2, 11],
## [ 0, 0, 0, ..., 172, 173, 174]])
## Test:
preds = rnn.predict(X_test)
## W0530 15:14:21.670461 1140 deprecation.py:323] From C:\Users\m\Anaconda2\envs\python36\lib\site-packages\tensorflow\python\training\saver.py:1276: checkpoint_exists (from tensorflow.python.training.checkpoint_management) is deprecated and will be removed in a future version.
## Instructions for updating:
## Use standard file APIs to check for files with this prefix.
y_true = y_test[:len(preds)]
print('Test Acc.: %.3f' % (
np.sum(preds == y_true) / len(y_true)))
## Test Acc.: 0.967
preds
## array([0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0,
## 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 1, 0, 0, 1, 0, 0, 0, 0, 0, 0,
## 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
## 1, 1, 0, 0, 1, 0, 1, 0, 1, 0, 0, 1, 1, 0, 0, 1, 1, 0, 1, 0, 1, 1,
## 1, 0])
preds.shape
## (90,)
prd = pd.DataFrame(preds)
prd.columns=['Predicted']
type(prd)
## <class 'pandas.core.frame.DataFrame'>
prd
## Predicted
## 0 0
## 1 0
## 2 0
## 3 0
## 4 0
## .. ...
## 85 0
## 86 1
## 87 1
## 88 1
## 89 0
##
## [90 rows x 1 columns]
true = pd.DataFrame(y_test)
true.columns=['trueValue']
prd.index=true.index
pred=pd.concat([pd.DataFrame(prd),true],axis=1)
print(pred)
## Predicted trueValue
## 0 0 0
## 1 0 0
## 2 0 0
## 3 0 0
## 4 0 0
## .. ... ...
## 85 0 0
## 86 1 1
## 87 1 2
## 88 1 1
## 89 0 0
##
## [90 rows x 2 columns]
## Get probabilities:
proba = rnn.predict(X_test, return_proba=True)
proba
## array([5.8251619e-04, 2.2783875e-04, 2.2783875e-04, 2.2783875e-04,
## 7.1525574e-07, 2.2783875e-04, 3.3110380e-04, 2.6774406e-04,
## 2.2779558e-04, 1.0000000e+00, 1.0228753e-03, 2.2777915e-04,
## 2.2777915e-04, 2.2777915e-04, 1.0228753e-03, 2.2777915e-04,
## 2.2947788e-06, 7.8870654e-03, 1.0228826e-03, 1.0000000e+00,
## 6.9737434e-06, 2.9159784e-03, 1.0228753e-03, 5.2005053e-05,
## 5.8248639e-04, 7.1525574e-07, 1.0228753e-03, 1.3709068e-06,
## 7.7108888e-07, 5.7717646e-04, 2.2783875e-04, 3.2313168e-03,
## 1.0000000e+00, 1.3709068e-06, 1.0000000e+00, 1.0061860e-03,
## 2.2777915e-04, 1.0000000e+00, 1.2943151e-06, 1.6596303e-03,
## 7.1525574e-07, 2.2351742e-06, 2.2783875e-04, 1.3113022e-06,
## 1.4853776e-03, 5.7715178e-04, 2.0265579e-06, 1.2814999e-06,
## 1.0228826e-03, 4.4999470e-06, 1.3113022e-06, 2.2783875e-04,
## 1.3709068e-06, 1.3113022e-06, 2.6512146e-04, 1.0000000e+00,
## 7.7486038e-07, 2.2783875e-04, 1.3936120e-06, 5.8249984e-04,
## 6.3478947e-05, 1.6596019e-03, 3.1292439e-06, 1.0818243e-05,
## 1.0818243e-05, 1.4357865e-03, 1.0000000e+00, 1.0000000e+00,
## 7.0459762e-04, 1.4358315e-03, 1.0000000e+00, 7.6147914e-04,
## 1.0000000e+00, 8.5338056e-03, 1.0000000e+00, 3.6969781e-04,
## 1.4910400e-03, 1.0000000e+00, 1.0000000e+00, 8.5337665e-03,
## 2.0563602e-06, 1.0000000e+00, 1.0000000e+00, 1.8021464e-04,
## 1.0000000e+00, 1.3709068e-06, 1.0000000e+00, 1.0000000e+00,
## 1.0000000e+00, 4.5541590e-03], dtype=float32)
proba.shape
## (90,)
This next RNN will make an attempt to predict the text as a limited output based on the actions over sequential data of instances for Felicia Spencer as a text document.
import numpy as np
## Reading and processing text
with open('amandaRNN.txt', 'r', encoding='utf-8') as f:
text=f.read()
text
## "missed R mt kick to low L leg\nmissed L jab\nmissed R mt kick to low L leg\nlands L mt kick to L leg\nmissed L jab, missed R cross\nlands L mt kick to L leg, missed R cross to face\nholding R leg hold starts\nholding R leg hold continues\nholding R leg hold continues\nholding R leg hold continues misses R cross to face\nloses R leg hold\nlands R mt kick to L low leg\nmisses L jab to face, misses R cross to face\nmisses L jab to face, misses R cross to face\nmisses L jab to face \nattempts body waste takedown\nlands takedown\ncaught in full guard hold\ncaught in full guard hold\ncaught in full guard hold\ncaught in full guard hold\ncaught in full guard hold\ncaught in full guard hold and puts weight on L shoulder collarbone acromian process while lifting off L leg to break full guard\ncaught in full guard hold\ncaught in full guard hold and twisting with R armpit and R leg anchoring into L locked thigh at the inside knee\ncaught in full guard hold and grabbing at L ear with R hand while twisting and lifting out of full guard lock, gains L arm back, breaks full guard lock at ankles\nbreaks full guard hold and standing up while keeping L shin of opponent at chest and bent\nholding L knee hold starts of opponent while standing up and maneuvering around L side of opponent pushing forward to knock off balance a possible up kick of opponent\ncaught in open guard hold continues and misses downward R hook to head while pushing and twisting L and holding L knee hold continues\ncaught in open guard hold continues and lands downward R cross to head while pushing opponent's leg toward her and turning L and loses L knee hold\ncaught in open guard hold continues and lands L downward cross to face while getting out of open guard completely\ncaught in open guard hold continues \ncaught in open guard hold continues and holding R foot while opponent in open guard\ncaught in open guard hold contnues and moves open guard feet to her R while landing R downward cross to face\nbreaks open guard hold and falls on ground to the side of opponent\ngetting up while attempting a head R arm guillotine of opponent as holding guillotine hold starts\nlocks guillotine around R armpit and neck of opponent while standing full guard lock and holding guillotine hold continues\nholding guillotine hold continues\nholding guillotine hold continues\ntakedown of opponent in full guard while holding of guillotine hold continues\nholding guillotine hold continues\nholding full guard hold starts and holding guillotine hold continues\nholding guillotine hold continues\nholding guillotine hold continues\nholding guillotine hold continues\nloses guillotine hold and loses full guard hold\npush kicks opponent off \ngetting up while L foot being held by opponent\ngetting up from ground\nholding R arm hold starts and caught in upper body hold\nholding R arm hold starts and caught in upper body hold\nholding R arm hold starts and caught in upper body hold\nholding R arm hold starts and caught in upper body hold\nholding R arm hold starts and caught in upper body hold\nholding R arm hold starts and caught in upper body hold\nholding R arm hold starts and caught in upper body hold\nholding R arm hold starts and caught in upper body hold\nholding R arm hold starts and caught in upper body hold\nholding R arm hold starts and caught in upper body hold\nholding R arm hold starts and caught in upper body hold\nholding R arm hold starts and caught in upper body hold\nholding R arm hold starts and caught in upper body hold\nholding R arm hold starts and caught in upper body hold\nholding R arm hold starts and caught in upper body hold\nholding R arm hold starts and caught in upper body hold\nholding R arm hold starts and caught in upper body hold\nholding R arm hold starts and caught in upper body hold\ncaught in R arm hold and caught in upper body hold continues and moves opponent away from side standing control against cage\nholding R arm hold starts and caught in upper body hold\nholding R arm hold starts and caught in upper body hold\nholding R arm hold starts and caught in upper body hold\nholding R arm hold starts and caught in upper body hold\nholding R arm hold starts and caught in upper body hold\nholding R arm hold starts and caught in upper body hold\nholding R arm hold starts and caught in upper body hold\nloses R arm hold and caught in upper body hold\nholding neck hold starts and caught in upper body hold\nbreaks upper body hold to switch sides\ncaught in upper body hold and holding R arm hold starts\nbreaks upper body hold and loses R arm hold and lands a R leg to L leg of opponent sweeping takedown\nlands slight double leg takedown\nnot on the ground but leaning over opponent\ncaught in open guard hold and lands downward R cross to face, lands downward L cross to face, lands downward R cross to face\ncaught in open guard hold and lands downward R cross to face\ncaught in open guard hold and lands downward R cross to face\ncaught in open guard hold \ncaught in open guard hold \ncaught in open guard hold \ncaught in open guard hold and breaks into opponents open guard hold against cage and lands R downward cross to head\ncaught in open guard hold and lands downward R cross to head, lands downward R cross to head\ncaught in open guard hold \ncaught in open guard hold \ncaught in open guard hold \ncaught in open guard hold \ncaught in open guard hold \ncaught in open guard hold \ncaught in open guard hold \ncaught in open guard hold \ncaught in open guard hold \ncaught in open guard hold and lands R downward cross to head\ncaught in open guard hold and lands R downward cross to head\ncaught in open guard hold \ncaught in open guard hold \ncaught in open guard hold \ncaught in open guard hold \ncaught in open guard hold \ncaught in open guard hold \ncaught in open guard hold \ncaught in open guard hold \ncaught in open guard hold and twists L forearm of opponent at the elbow pushing the hand in open guard hold from standing leaning over position\ncaught in open guard hold \ncaught in open guard hold \nbreaks open guard hold hold\ncaught in full guard hold \ncaught in full guard hold \ncaught in full guard hold \ncaught in full guard hold \ncaught in full guard hold \ncaught in full guard hold \ncaught in full guard hold \nlands R elbow to face and caught in full guard hold \ncaught in full guard hold \ncaught in full guard hold \ncaught in full guard hold \ncaught in full guard hold \nbreaks full guard hold and caught in open guard hold\ncaught in open guard hold\ncaught in open guard hold\nlands R downward cross to face and caught in open guard hold\ncaught in open guard hold\nlands R downward cross to face and caught in open guard hold\ncaught in open guard hold\ncaught in open guard hold\ncaught in open guard hold and misses L downward cross to head, lands R downward cross to head\ncaught in open guard hold\ncaught in open guard hold\ncaught in open guard hold\ncaught in open guard hold\ncaught in open guard hold\ncaught in open guard hold\ncaught in open guard hold\ncaught in open guard hold\ncaught in open guard hold\ncaught in open guard hold\ncaught in open guard hold\nbreaks through leg kicks of open guard and caught in open guard hold\nlands downward R cross to head and caught in open guard hold\nlands downward R cross to head and caught in open guard hold\nlands downward R cross to head and caught in open guard hold, lands downward R cross to head\nlands downward R cross to head and caught in open guard hold, lands downward R cross to head\nmisses downward R cross to head and caught in open guard hold, misses downward R cross to head\nlands downward L cross to head and caught in open guard hold, lands downward L cross to head\nlands downward R cross to head and caught in open guard hold\nmisses downward R cross to head and caught in open guard hold\ncaught in open guard hold\ncaught in open guard hold\nlands downward R cross to head and caught in open guard hold, lands downward L cross to head\nmisses downward R cross to head and caught in open guard hold, misses downward L cross to head, lands L downward cross to head\nlands downward R cross to head and caught in open guard hold\nlands downward R cross to head and caught in open guard hold, lands downward L cross to head\nlands downward R cross to head and caught in open guard hold\nlands downward L cross to head and caught in open guard hold\nmisses downward R cross to head and caught in open guard hold, lands L downward cross to head\nlands downward R cross to head and caught in open guard hold, lands L downward cross to head\nmisses downward R cross to head and caught in open guard hold, misses downward L cross to head\nmisses downward R cross to head and caught in open guard hold, misses downward L cross to head, misses downward R cross to head\npressing opponent into ground from the top at opponents shoulders and neck having open guard and legs up off balance removing leverage to kick up and caught in open guard hold\ncaught in open guard hold\nknee pinned to abdomen and holding L side control hold starts and breaks open guard hold\nholding side control hold continues\nlands L downward cross to head and holding side control hold continues\nlands L downward hook to face and holding side control hold continues, lands L downward elbow to face\nholding side control hold continues\nholding side control hold continues\nholding side control hold continues\nholding side control hold continues\nholding side control hold continues\nL back side control hold with L knee pinned to opponent's L hip and holding side control hold continues\nholding side control hold continues\nholding side control hold continues\nholding side control hold continues\nholding side control hold continues\nholding side control hold continues\nholding side control hold continues\nholding side control hold continues\nholding side control hold continues\nholding a L armpit and neck choke hold starts and holding side control hold continues\nholding choke hold continues and holding side control hold continues\nholding choke hold continues and holding side control hold continues\nholding choke hold continues and holding side control hold continues\nholding choke hold continues and holding side control hold continues\nholding choke hold continues and holding side control hold continues\nholding choke hold continues and holding side control hold continues\nholding choke hold continues and holding side control hold continues\nholding choke hold continues and holding side control hold continues\nholding choke hold continues and holding side control hold continues\nholding choke hold continues and holding side control hold continues\nholding choke hold continues and holding side control hold continues\nholding choke hold continues and holding side control hold continues\nholding choke hold continues and holding side control hold continues\nholding choke hold continues and holding side control hold continues\nholding choke hold continues and holding side control hold continues\nholding choke hold continues and holding side control hold continues\nloses choke hold and holding side control hold continues and pins L knee on opponent's abdomen\nmisses R hammer to face holding side control hold continues with knee pinning opponent's abdomen\n holding side control hold continues\nlands L downward elbow to the face from pinned side control mount\nmisses L downward elbow to face\nloses side control hold\nmisses downward R cross to face\ncaught in open guard hold \ncaught in open guard hold \ncaught in open guard hold \ncaught in open guard hold \nmisses downward flying R cross to face and caught in open guard hold \ncaught in open guard hold \ncaught in open guard hold \ncaught in open guard hold \ncaught in open guard hold \ncaught in open guard hold \ncaught in open guard hold \ncaught in open guard hold \ncaught in open guard hold \ncaught in open guard hold \ncaught in open guard hold \ncaught in open guard hold \nround ends caught in open guard hold\nmisses L jab\nmisses R mt kick to low L lead leg\nmisses R mt kick to low L lead leg\nmisses L jab\nmisses R mt kick to low L lead leg\ngets up out of takedown\nmisses R cross to face\nmisses R mt kick to low L lead leg\nmisses R cross to face\nmisses R cross to face\nlands body throw takedown gets up\nmisses illegal right knee to the face\nmisses L jab\nmisses L jab, misses R cross to face\nmisses R cross to face\nmisses L jab\nlands R cross\nmisses R cross to face\nmisses R cross to face\nmisses R cross to face\nmisses L jab to face, ducks to avoid body takedown from missed L jab\nmisses R cross to face\nmisses L jab\nlands R cross to face\nmisses R cross to face\nlands L hook to face\nmisses R cross to face\nlands R cross\nlands L upper to face\nmisses R upper to face, misses R upper to face\nlands L knee to face\nmisses L jab, misses R cross to face\nlands L jab to face\nmisses R cross to face\nmisses R mt kick to inside R leg\nlands L jab to face, lands R cross to face\nmisses R cross to face\nlands 2 hammer hits R face on top back\nlands 2 hammer hits L face on top back\nlands 2 hammer hits L face on top back\nlands RNC\nflips on back w RNC\nmisses R mt kick to low L lead leg\nmisses R cross\nmisses R mt kick to low L lead leg\nmisses R mt kick to low L lead leg\nmisses R mt kick to low L lead leg\nmisses L jab to face\nmisses R mt kick to low L lead leg\nfeigns L mt kick to inside L lead leg\nmissses R mt kick to low L lead leg\nmisses R mt kick to low L lead leg\nlands L jab to body, misses R cross to face\nmisses L jab to body\nmisses R mt kick to low L lead leg\nmisses R mt kick to low L lead leg\nmisses R mt kick to low L lead leg\nmisses L jab to body\nmisses R mt kick to low L lead leg\nmisses L jab to face, misses R cross to face\npushes off with R forearm\nmisses L jab to body\nlands R mt kick to low L back of knee, misses L jab, misses R cross\nblocks L jab by raising L Shoulder, misses R cross to face\npushes Face with R hand and away\nmisses L jab to body\nmisses L jab to body, leans back from R cross to face\nmisses R cross\nmisses L jab to face\nmisses L jab to body\nmisses R cross to face\nmisses L jab to face\nducks \nmisses R mt kick to low L lead leg\nducks and clinches waist pushes to cage\nlands R upper to face \nmisses R cross to face\nlands R mt kick to low L back of knee\nblocks L hook with R overhead arm\nmisses R mt kick to low L lead leg\nlands R push kick to body\nmisses L jab, misses R cross to face\nmisses R push kick to body\nmisses L jab to face\nmisses R cross to face, misses R cross to face\nmisses R mt kick to low L lead leg\nmisses R cross to face\nmisses R mt kick to body\nducks\nmisses R upper to face\nmisses L jab, misses R cross to face\nmisses L jab to body\nfeigns L mt kick to head\nmisses L jab, misses R cross to face\nmisses R mt kick to low L lead leg\nmisses R cross to face\nmisses L jab, misses R cross to face\nmisses L mt kick to inside L lead leg\nlands L knee to body with neck clinch\nmisses L jab to face\nmisses R mt kick to low L lead leg\nmisses R cross to face\nmisses R cross\nmisses L jab\nmisses R push kick to body\nmissed a L jab to face\nmissed a R cross to face\nmissed a R cross to face\nmissed a R push kick to body\nmissed a R cross to face, lands a L jab to face\nmissed a L jab to face, lands a R cross to face \nmissed a R cross, missed a L jab to face, missed a R cross to face\nmissed a R push kick to body\nlands a R cross to face\nturns body to side gets out of clinch\nlands L jab to face, misses R cross to face\nmisses L jab to face, misses R cross to face, \nlands L jab to face face\nmisses R cross to face, misses L upper\nmisses R cross to body\nlands L jab to face\nlands R cross to face, ducks R cross left\nmisses L jab to face, misses R cross to face, \nmisses R upper to face\nlands L jab to face, misses R cross to face\nmisses L jab to face, lands R cross to face\nruns to and feigns a R cross to face\nlands a R cross to face\nmisses R cross to face \nlands a R cross to face\nlands a L jab to face, lands R cross to face\nlands downward L jab to face\nreferee gets between and stops fight TKO\nmissed R mt kick to low L leg\nmissed L jab\nmissed R mt kick to low L leg\nlands L mt kick to L leg\nmissed L jab, missed R cross\nlands L mt kick to L leg, missed R cross to face\nholding R leg hold starts\nholding R leg hold continues\nholding R leg hold continues\nholding R leg hold continues misses R cross to face\nloses R leg hold\nlands R mt kick to L low leg\nmisses L jab to face, misses R cross to face\nmisses L jab to face, misses R cross to face\nmisses L jab to face \nattempts body waste takedown\nlands takedown\ncaught in full guard hold\ncaught in full guard hold\ncaught in full guard hold\ncaught in full guard hold\ncaught in full guard hold\ncaught in full guard hold and puts weight on L shoulder collarbone acromian process while lifting off L leg to break full guard\ncaught in full guard hold\ncaught in full guard hold and twisting with R armpit and R leg anchoring into L locked thigh at the inside knee\ncaught in full guard hold and grabbing at L ear with R hand while twisting and lifting out of full guard lock, gains L arm back, breaks full guard lock at ankles\nbreaks full guard hold and standing up while keeping L shin of opponent at chest and bent\nholding L knee hold starts of opponent while standing up and maneuvering around L side of opponent pushing forward to knock off balance a possible up kick of opponent\ncaught in open guard hold continues and misses downward R hook to head while pushing and twisting L and holding L knee hold continues\ncaught in open guard hold continues and lands downward R cross to head while pushing opponent's leg toward her and turning L and loses L knee hold\ncaught in open guard hold continues and lands L downward cross to face while getting out of open guard completely\ncaught in open guard hold continues \ncaught in open guard hold continues and holding R foot while opponent in open guard\ncaught in open guard hold contnues and moves open guard feet to her R while landing R downward cross to face\nbreaks open guard hold and falls on ground to the side of opponent\ngetting up while attempting a head R arm guillotine of opponent as holding guillotine hold starts\nlocks guillotine around R armpit and neck of opponent while standing full guard lock and holding guillotine hold continues\nholding guillotine hold continues\nholding guillotine hold continues\ntakedown of opponent in full guard while holding of guillotine hold continues\nholding guillotine hold continues\nholding full guard hold starts and holding guillotine hold continues\nholding guillotine hold continues\nholding guillotine hold continues\nholding guillotine hold continues\nloses guillotine hold and loses full guard hold\npush kicks opponent off \ngetting up while L foot being held by opponent\ngetting up from ground\nholding R arm hold starts and caught in upper body hold\nholding R arm hold starts and caught in upper body hold\nholding R arm hold starts and caught in upper body hold\nholding R arm hold starts and caught in upper body hold\nholding R arm hold starts and caught in upper body hold\nholding R arm hold starts and caught in upper body hold\nholding R arm hold starts and caught in upper body hold\nholding R arm hold starts and caught in upper body hold\nholding R arm hold starts and caught in upper body hold\nholding R arm hold starts and caught in upper body hold\nholding R arm hold starts and caught in upper body hold\nholding R arm hold starts and caught in upper body hold\nholding R arm hold starts and caught in upper body hold\nholding R arm hold starts and caught in upper body hold\nholding R arm hold starts and caught in upper body hold\nholding R arm hold starts and caught in upper body hold\nholding R arm hold starts and caught in upper body hold\nholding R arm hold starts and caught in upper body hold\ncaught in R arm hold and caught in upper body hold continues and moves opponent away from side standing control against cage\nholding R arm hold starts and caught in upper body hold\nholding R arm hold starts and caught in upper body hold\nholding R arm hold starts and caught in upper body hold\nholding R arm hold starts and caught in upper body hold\nholding R arm hold starts and caught in upper body hold\nholding R arm hold starts and caught in upper body hold\nholding R arm hold starts and caught in upper body hold\nloses R arm hold and caught in upper body hold\nholding neck hold starts and caught in upper body hold\nbreaks upper body hold to switch sides\ncaught in upper body hold and holding R arm hold starts\nbreaks upper body hold and loses R arm hold and lands a R leg to L leg of opponent sweeping takedown\nlands slight double leg takedown\nnot on the ground but leaning over opponent\ncaught in open guard hold and lands downward R cross to face, lands downward L cross to face, lands downward R cross to face\ncaught in open guard hold and lands downward R cross to face\ncaught in open guard hold and lands downward R cross to face\ncaught in open guard hold \ncaught in open guard hold \ncaught in open guard hold \ncaught in open guard hold and breaks into opponents open guard hold against cage and lands R downward cross to head\ncaught in open guard hold and lands downward R cross to head, lands downward R cross to head\ncaught in open guard hold \ncaught in open guard hold \ncaught in open guard hold \ncaught in open guard hold \ncaught in open guard hold \ncaught in open guard hold \ncaught in open guard hold \ncaught in open guard hold \ncaught in open guard hold \ncaught in open guard hold and lands R downward cross to head\ncaught in open guard hold and lands R downward cross to head\ncaught in open guard hold \ncaught in open guard hold \ncaught in open guard hold \ncaught in open guard hold \ncaught in open guard hold \ncaught in open guard hold \ncaught in open guard hold \ncaught in open guard hold \ncaught in open guard hold and twists L forearm of opponent at the elbow pushing the hand in open guard hold from standing leaning over position\ncaught in open guard hold \ncaught in open guard hold \nbreaks open guard hold hold\ncaught in full guard hold \ncaught in full guard hold \ncaught in full guard hold \ncaught in full guard hold \ncaught in full guard hold \ncaught in full guard hold \ncaught in full guard hold \nlands R elbow to face and caught in full guard hold \ncaught in full guard hold \ncaught in full guard hold \ncaught in full guard hold \ncaught in full guard hold \nbreaks full guard hold and caught in open guard hold\ncaught in open guard hold\ncaught in open guard hold\nlands R downward cross to face and caught in open guard hold\ncaught in open guard hold\nlands R downward cross to face and caught in open guard hold\ncaught in open guard hold\ncaught in open guard hold\ncaught in open guard hold and misses L downward cross to head, lands R downward cross to head\ncaught in open guard hold\ncaught in open guard hold\ncaught in open guard hold\ncaught in open guard hold\ncaught in open guard hold\ncaught in open guard hold\ncaught in open guard hold\ncaught in open guard hold\ncaught in open guard hold\ncaught in open guard hold\ncaught in open guard hold\nbreaks through leg kicks of open guard and caught in open guard hold\nlands downward R cross to head and caught in open guard hold\nlands downward R cross to head and caught in open guard hold\nlands downward R cross to head and caught in open guard hold, lands downward R cross to head\nlands downward R cross to head and caught in open guard hold, lands downward R cross to head\nmisses downward R cross to head and caught in open guard hold, misses downward R cross to head\nlands downward L cross to head and caught in open guard hold, lands downward L cross to head\nlands downward R cross to head and caught in open guard hold\nmisses downward R cross to head and caught in open guard hold\ncaught in open guard hold\ncaught in open guard hold\nlands downward R cross to head and caught in open guard hold, lands downward L cross to head\nmisses downward R cross to head and caught in open guard hold, misses downward L cross to head, lands L downward cross to head\nlands downward R cross to head and caught in open guard hold\nlands downward R cross to head and caught in open guard hold, lands downward L cross to head\nlands downward R cross to head and caught in open guard hold\nlands downward L cross to head and caught in open guard hold\nmisses downward R cross to head and caught in open guard hold, lands L downward cross to head\nlands downward R cross to head and caught in open guard hold, lands L downward cross to head\nmisses downward R cross to head and caught in open guard hold, misses downward L cross to head\nmisses downward R cross to head and caught in open guard hold, misses downward L cross to head, misses downward R cross to head\npressing opponent into ground from the top at opponents shoulders and neck having open guard and legs up off balance removing leverage to kick up and caught in open guard hold\ncaught in open guard hold\nknee pinned to abdomen and holding L side control hold starts and breaks open guard hold\nholding side control hold continues\nlands L downward cross to head and holding side control hold continues\nlands L downward hook to face and holding side control hold continues, lands L downward elbow to face\nholding side control hold continues\nholding side control hold continues\nholding side control hold continues\nholding side control hold continues\nholding side control hold continues\nL back side control hold with L knee pinned to opponent's L hip and holding side control hold continues\nholding side control hold continues\nholding side control hold continues\nholding side control hold continues\nholding side control hold continues\nholding side control hold continues\nholding side control hold continues\nholding side control hold continues\nholding side control hold continues\nholding a L armpit and neck choke hold starts and holding side control hold continues\nholding choke hold continues and holding side control hold continues\nholding choke hold continues and holding side control hold continues\nholding choke hold continues and holding side control hold continues\nholding choke hold continues and holding side control hold continues\nholding choke hold continues and holding side control hold continues\nholding choke hold continues and holding side control hold continues\nholding choke hold continues and holding side control hold continues\nholding choke hold continues and holding side control hold continues\nholding choke hold continues and holding side control hold continues\nholding choke hold continues and holding side control hold continues\nholding choke hold continues and holding side control hold continues\nholding choke hold continues and holding side control hold continues\nholding choke hold continues and holding side control hold continues\nholding choke hold continues and holding side control hold continues\nholding choke hold continues and holding side control hold continues\nholding choke hold continues and holding side control hold continues\nloses choke hold and holding side control hold continues and pins L knee on opponent's abdomen\nmisses R hammer to face holding side control hold continues with knee pinning opponent's abdomen\n holding side control hold continues\nlands L downward elbow to the face from pinned side control mount\nmisses L downward elbow to face\nloses side control hold\nmisses downward R cross to face\ncaught in open guard hold \ncaught in open guard hold \ncaught in open guard hold \ncaught in open guard hold \nmisses downward flying R cross to face and caught in open guard hold \ncaught in open guard hold \ncaught in open guard hold \ncaught in open guard hold \ncaught in open guard hold \ncaught in open guard hold \ncaught in open guard hold \ncaught in open guard hold \ncaught in open guard hold \ncaught in open guard hold \ncaught in open guard hold \ncaught in open guard hold \nround ends caught in open guard hold\nmisses L jab\nmisses R mt kick to low L lead leg\nmisses R mt kick to low L lead leg\nmisses L jab\nmisses R mt kick to low L lead leg\ngets up out of takedown\nmisses R cross to face\nmisses R mt kick to low L lead leg\nmisses R cross to face\nmisses R cross to face\nlands body throw takedown gets up\nmisses illegal right knee to the face\nmisses L jab\nmisses L jab, misses R cross to face\nmisses R cross to face\nmisses L jab\nlands R cross\nmisses R cross to face\nmisses R cross to face\nmisses R cross to face\nmisses L jab to face, ducks to avoid body takedown from missed L jab\nmisses R cross to face\nmisses L jab\nlands R cross to face\nmisses R cross to face\nlands L hook to face\nmisses R cross to face\nlands R cross\nlands L upper to face\nmisses R upper to face, misses R upper to face\nlands L knee to face\nmisses L jab, misses R cross to face\nlands L jab to face\nmisses R cross to face\nmisses R mt kick to inside R leg\nlands L jab to face, lands R cross to face\nmisses R cross to face\nlands 2 hammer hits R face on top back\nlands 2 hammer hits L face on top back\nlands 2 hammer hits L face on top back\nlands RNC\nflips on back w RNC\nmisses R mt kick to low L lead leg\nmisses R cross\nmisses R mt kick to low L lead leg\nmisses R mt kick to low L lead leg\nmisses R mt kick to low L lead leg\nmisses L jab to face\nmisses R mt kick to low L lead leg\nfeigns L mt kick to inside L lead leg\nmissses R mt kick to low L lead leg\nmisses R mt kick to low L lead leg\nlands L jab to body, misses R cross to face\nmisses L jab to body\nmisses R mt kick to low L lead leg\nmisses R mt kick to low L lead leg\nmisses R mt kick to low L lead leg\nmisses L jab to body\nmisses R mt kick to low L lead leg\nmisses L jab to face, misses R cross to face\npushes off with R forearm\nmisses L jab to body\nlands R mt kick to low L back of knee, misses L jab, misses R cross\nblocks L jab by raising L Shoulder, misses R cross to face\npushes Face with R hand and away\nmisses L jab to body\nmisses L jab to body, leans back from R cross to face\nmisses R cross\nmisses L jab to face\nmisses L jab to body\nmisses R cross to face\nmisses L jab to face\nducks \nmisses R mt kick to low L lead leg\nducks and clinches waist pushes to cage\nlands R upper to face \nmisses R cross to face\nlands R mt kick to low L back of knee\nblocks L hook with R overhead arm\nmisses R mt kick to low L lead leg\nlands R push kick to body\nmisses L jab, misses R cross to face\nmisses R push kick to body\nmisses L jab to face\nmisses R cross to face, misses R cross to face\nmisses R mt kick to low L lead leg\nmisses R cross to face\nmisses R mt kick to body\nducks\nmisses R upper to face\nmisses L jab, misses R cross to face\nmisses L jab to body\nfeigns L mt kick to head\nmisses L jab, misses R cross to face\nmisses R mt kick to low L lead leg\nmisses R cross to face\nmisses L jab, misses R cross to face\nmisses L mt kick to inside L lead leg\nlands L knee to body with neck clinch\nmisses L jab to face\nmisses R mt kick to low L lead leg\nmisses R cross to face\nmisses R cross\nmisses L jab\nmisses R push kick to body\nmissed a L jab to face\nmissed a R cross to face\nmissed a R cross to face\nmissed a R push kick to body\nmissed a R cross to face, lands a L jab to face\nmissed a L jab to face, lands a R cross to face \nmissed a R cross, missed a L jab to face, missed a R cross to face\nmissed a R push kick to body\nlands a R cross to face\nturns body to side gets out of clinch\nlands L jab to face, misses R cross to face\nmisses L jab to face, misses R cross to face, \nlands L jab to face face\nmisses R cross to face, misses L upper\nmisses R cross to body\nlands L jab to face\nlands R cross to face, ducks R cross left\nmisses L jab to face, misses R cross to face, \nmisses R upper to face\nlands L jab to face, misses R cross to face\nmisses L jab to face, lands R cross to face\nruns to and feigns a R cross to face\nlands a R cross to face\nmisses R cross to face \nlands a R cross to face\nlands a L jab to face, lands R cross to face\nlands downward L jab to face\nreferee gets between and stops fight TKO\nmissed R mt kick to low L leg\nmissed L jab\nmissed R mt kick to low L leg\nlands L mt kick to L leg\nmissed L jab, missed R cross\nlands L mt kick to L leg, missed R cross to face\nholding R leg hold starts\nholding R leg hold continues\nholding R leg hold continues\nholding R leg hold continues misses R cross to face\nloses R leg hold\nlands R mt kick to L low leg\nmisses L jab to face, misses R cross to face\nmisses L jab to face, misses R cross to face\nmisses L jab to face \nattempts body waste takedown\nlands takedown\ncaught in full guard hold\ncaught in full guard hold\ncaught in full guard hold\ncaught in full guard hold\ncaught in full guard hold\ncaught in full guard hold and puts weight on L shoulder collarbone acromian process while lifting off L leg to break full guard\ncaught in full guard hold\ncaught in full guard hold and twisting with R armpit and R leg anchoring into L locked thigh at the inside knee\ncaught in full guard hold and grabbing at L ear with R hand while twisting and lifting out of full guard lock, gains L arm back, breaks full guard lock at ankles\nbreaks full guard hold and standing up while keeping L shin of opponent at chest and bent\nholding L knee hold starts of opponent while standing up and maneuvering around L side of opponent pushing forward to knock off balance a possible up kick of opponent\ncaught in open guard hold continues and misses downward R hook to head while pushing and twisting L and holding L knee hold continues\ncaught in open guard hold continues and lands downward R cross to head while pushing opponent's leg toward her and turning L and loses L knee hold\ncaught in open guard hold continues and lands L downward cross to face while getting out of open guard completely\ncaught in open guard hold continues \ncaught in open guard hold continues and holding R foot while opponent in open guard\ncaught in open guard hold contnues and moves open guard feet to her R while landing R downward cross to face\nbreaks open guard hold and falls on ground to the side of opponent\ngetting up while attempting a head R arm guillotine of opponent as holding guillotine hold starts\nlocks guillotine around R armpit and neck of opponent while standing full guard lock and holding guillotine hold continues\nholding guillotine hold continues\nholding guillotine hold continues\ntakedown of opponent in full guard while holding of guillotine hold continues\nholding guillotine hold continues\nholding full guard hold starts and holding guillotine hold continues\nholding guillotine hold continues\nholding guillotine hold continues\nholding guillotine hold continues\nloses guillotine hold and loses full guard hold\npush kicks opponent off \ngetting up while L foot being held by opponent\ngetting up from ground\nholding R arm hold starts and caught in upper body hold\nholding R arm hold starts and caught in upper body hold\nholding R arm hold starts and caught in upper body hold\nholding R arm hold starts and caught in upper body hold\nholding R arm hold starts and caught in upper body hold\nholding R arm hold starts and caught in upper body hold\nholding R arm hold starts and caught in upper body hold\nholding R arm hold starts and caught in upper body hold\nholding R arm hold starts and caught in upper body hold\nholding R arm hold starts and caught in upper body hold\nholding R arm hold starts and caught in upper body hold\nholding R arm hold starts and caught in upper body hold\nholding R arm hold starts and caught in upper body hold\nholding R arm hold starts and caught in upper body hold\nholding R arm hold starts and caught in upper body hold\nholding R arm hold starts and caught in upper body hold\nholding R arm hold starts and caught in upper body hold\nholding R arm hold starts and caught in upper body hold\ncaught in R arm hold and caught in upper body hold continues and moves opponent away from side standing control against cage\nholding R arm hold starts and caught in upper body hold\nholding R arm hold starts and caught in upper body hold\nholding R arm hold starts and caught in upper body hold\nholding R arm hold starts and caught in upper body hold\nholding R arm hold starts and caught in upper body hold\nholding R arm hold starts and caught in upper body hold\nholding R arm hold starts and caught in upper body hold\nloses R arm hold and caught in upper body hold\nholding neck hold starts and caught in upper body hold\nbreaks upper body hold to switch sides\ncaught in upper body hold and holding R arm hold starts\nbreaks upper body hold and loses R arm hold and lands a R leg to L leg of opponent sweeping takedown\nlands slight double leg takedown\nnot on the ground but leaning over opponent\ncaught in open guard hold and lands downward R cross to face, lands downward L cross to face, lands downward R cross to face\ncaught in open guard hold and lands downward R cross to face\ncaught in open guard hold and lands downward R cross to face\ncaught in open guard hold \ncaught in open guard hold \ncaught in open guard hold \ncaught in open guard hold and breaks into opponents open guard hold against cage and lands R downward cross to head\ncaught in open guard hold and lands downward R cross to head, lands downward R cross to head\ncaught in open guard hold \ncaught in open guard hold \ncaught in open guard hold \ncaught in open guard hold \ncaught in open guard hold \ncaught in open guard hold \ncaught in open guard hold \ncaught in open guard hold \ncaught in open guard hold \ncaught in open guard hold and lands R downward cross to head\ncaught in open guard hold and lands R downward cross to head\ncaught in open guard hold \ncaught in open guard hold \ncaught in open guard hold \ncaught in open guard hold \ncaught in open guard hold \ncaught in open guard hold \ncaught in open guard hold \ncaught in open guard hold \ncaught in open guard hold and twists L forearm of opponent at the elbow pushing the hand in open guard hold from standing leaning over position\ncaught in open guard hold \ncaught in open guard hold \nbreaks open guard hold hold\ncaught in full guard hold \ncaught in full guard hold \ncaught in full guard hold \ncaught in full guard hold \ncaught in full guard hold \ncaught in full guard hold \ncaught in full guard hold \nlands R elbow to face and caught in full guard hold \ncaught in full guard hold \ncaught in full guard hold \ncaught in full guard hold \ncaught in full guard hold \nbreaks full guard hold and caught in open guard hold\ncaught in open guard hold\ncaught in open guard hold\nlands R downward cross to face and caught in open guard hold\ncaught in open guard hold\nlands R downward cross to face and caught in open guard hold\ncaught in open guard hold\ncaught in open guard hold\ncaught in open guard hold and misses L downward cross to head, lands R downward cross to head\ncaught in open guard hold\ncaught in open guard hold\ncaught in open guard hold\ncaught in open guard hold\ncaught in open guard hold\ncaught in open guard hold\ncaught in open guard hold\ncaught in open guard hold\ncaught in open guard hold\ncaught in open guard hold\ncaught in open guard hold\nbreaks through leg kicks of open guard and caught in open guard hold\nlands downward R cross to head and caught in open guard hold\nlands downward R cross to head and caught in open guard hold\nlands downward R cross to head and caught in open guard hold, lands downward R cross to head\nlands downward R cross to head and caught in open guard hold, lands downward R cross to head\nmisses downward R cross to head and caught in open guard hold, misses downward R cross to head\nlands downward L cross to head and caught in open guard hold, lands downward L cross to head\nlands downward R cross to head and caught in open guard hold\nmisses downward R cross to head and caught in open guard hold\ncaught in open guard hold\ncaught in open guard hold\nlands downward R cross to head and caught in open guard hold, lands downward L cross to head\nmisses downward R cross to head and caught in open guard hold, misses downward L cross to head, lands L downward cross to head\nlands downward R cross to head and caught in open guard hold\nlands downward R cross to head and caught in open guard hold, lands downward L cross to head\nlands downward R cross to head and caught in open guard hold\nlands downward L cross to head and caught in open guard hold\nmisses downward R cross to head and caught in open guard hold, lands L downward cross to head\nlands downward R cross to head and caught in open guard hold, lands L downward cross to head\nmisses downward R cross to head and caught in open guard hold, misses downward L cross to head\nmisses downward R cross to head and caught in open guard hold, misses downward L cross to head, misses downward R cross to head\npressing opponent into ground from the top at opponents shoulders and neck having open guard and legs up off balance removing leverage to kick up and caught in open guard hold\ncaught in open guard hold\nknee pinned to abdomen and holding L side control hold starts and breaks open guard hold\nholding side control hold continues\nlands L downward cross to head and holding side control hold continues\nlands L downward hook to face and holding side control hold continues, lands L downward elbow to face\nholding side control hold continues\nholding side control hold continues\nholding side control hold continues\nholding side control hold continues\nholding side control hold continues\nL back side control hold with L knee pinned to opponent's L hip and holding side control hold continues\nholding side control hold continues\nholding side control hold continues\nholding side control hold continues\nholding side control hold continues\nholding side control hold continues\nholding side control hold continues\nholding side control hold continues\nholding side control hold continues\nholding a L armpit and neck choke hold starts and holding side control hold continues\nholding choke hold continues and holding side control hold continues\nholding choke hold continues and holding side control hold continues\nholding choke hold continues and holding side control hold continues\nholding choke hold continues and holding side control hold continues\nholding choke hold continues and holding side control hold continues\nholding choke hold continues and holding side control hold continues\nholding choke hold continues and holding side control hold continues\nholding choke hold continues and holding side control hold continues\nholding choke hold continues and holding side control hold continues\nholding choke hold continues and holding side control hold continues\nholding choke hold continues and holding side control hold continues\nholding choke hold continues and holding side control hold continues\nholding choke hold continues and holding side control hold continues\nholding choke hold continues and holding side control hold continues\nholding choke hold continues and holding side control hold continues\nholding choke hold continues and holding side control hold continues\nloses choke hold and holding side control hold continues and pins L knee on opponent's abdomen\nmisses R hammer to face holding side control hold continues with knee pinning opponent's abdomen\n holding side control hold continues\nlands L downward elbow to the face from pinned side control mount\nmisses L downward elbow to face\nloses side control hold\nmisses downward R cross to face\ncaught in open guard hold \ncaught in open guard hold \ncaught in open guard hold \ncaught in open guard hold \nmisses downward flying R cross to face and caught in open guard hold \ncaught in open guard hold \ncaught in open guard hold \ncaught in open guard hold \ncaught in open guard hold \ncaught in open guard hold \ncaught in open guard hold \ncaught in open guard hold \ncaught in open guard hold \ncaught in open guard hold \ncaught in open guard hold \ncaught in open guard hold \nround ends caught in open guard hold\nmisses L jab\nmisses R mt kick to low L lead leg\nmisses R mt kick to low L lead leg\nmisses L jab\nmisses R mt kick to low L lead leg\ngets up out of takedown\nmisses R cross to face\nmisses R mt kick to low L lead leg\nmisses R cross to face\nmisses R cross to face\nlands body throw takedown gets up\nmisses illegal right knee to the face\nmisses L jab\nmisses L jab, misses R cross to face\nmisses R cross to face\nmisses L jab\nlands R cross\nmisses R cross to face\nmisses R cross to face\nmisses R cross to face\nmisses L jab to face, ducks to avoid body takedown from missed L jab\nmisses R cross to face\nmisses L jab\nlands R cross to face\nmisses R cross to face\nlands L hook to face\nmisses R cross to face\nlands R cross\nlands L upper to face\nmisses R upper to face, misses R upper to face\nlands L knee to face\nmisses L jab, misses R cross to face\nlands L jab to face\nmisses R cross to face\nmisses R mt kick to inside R leg\nlands L jab to face, lands R cross to face\nmisses R cross to face\nlands 2 hammer hits R face on top back\nlands 2 hammer hits L face on top back\nlands 2 hammer hits L face on top back\nlands RNC\nflips on back w RNC\nmisses R mt kick to low L lead leg\nmisses R cross\nmisses R mt kick to low L lead leg\nmisses R mt kick to low L lead leg\nmisses R mt kick to low L lead leg\nmisses L jab to face\nmisses R mt kick to low L lead leg\nfeigns L mt kick to inside L lead leg\nmissses R mt kick to low L lead leg\nmisses R mt kick to low L lead leg\nlands L jab to body, misses R cross to face\nmisses L jab to body\nmisses R mt kick to low L lead leg\nmisses R mt kick to low L lead leg\nmisses R mt kick to low L lead leg\nmisses L jab to body\nmisses R mt kick to low L lead leg\nmisses L jab to face, misses R cross to face\npushes off with R forearm\nmisses L jab to body\nlands R mt kick to low L back of knee, misses L jab, misses R cross\nblocks L jab by raising L Shoulder, misses R cross to face\npushes Face with R hand and away\nmisses L jab to body\nmisses L jab to body, leans back from R cross to face\nmisses R cross\nmisses L jab to face\nmisses L jab to body\nmisses R cross to face\nmisses L jab to face\nducks \nmisses R mt kick to low L lead leg\nducks and clinches waist pushes to cage\nlands R upper to face \nmisses R cross to face\nlands R mt kick to low L back of knee\nblocks L hook with R overhead arm\nmisses R mt kick to low L lead leg\nlands R push kick to body\nmisses L jab, misses R cross to face\nmisses R push kick to body\nmisses L jab to face\nmisses R cross to face, misses R cross to face\nmisses R mt kick to low L lead leg\nmisses R cross to face\nmisses R mt kick to body\nducks\nmisses R upper to face\nmisses L jab, misses R cross to face\nmisses L jab to body\nfeigns L mt kick to head\nmisses L jab, misses R cross to face\nmisses R mt kick to low L lead leg\nmisses R cross to face\nmisses L jab, misses R cross to face\nmisses L mt kick to inside L lead leg\nlands L knee to body with neck clinch\nmisses L jab to face\nmisses R mt kick to low L lead leg\nmisses R cross to face\nmisses R cross\nmisses L jab\nmisses R push kick to body\nmissed a L jab to face\nmissed a R cross to face\nmissed a R cross to face\nmissed a R push kick to body\nmissed a R cross to face, lands a L jab to face\nmissed a L jab to face, lands a R cross to face \nmissed a R cross, missed a L jab to face, missed a R cross to face\nmissed a R push kick to body\nlands a R cross to face\nturns body to side gets out of clinch\nlands L jab to face, misses R cross to face\nmisses L jab to face, misses R cross to face, \nlands L jab to face face\nmisses R cross to face, misses L upper\nmisses R cross to body\nlands L jab to face\nlands R cross to face, ducks R cross left\nmisses L jab to face, misses R cross to face, \nmisses R upper to face\nlands L jab to face, misses R cross to face\nmisses L jab to face, lands R cross to face\nruns to and feigns a R cross to face\nlands a R cross to face\nmisses R cross to face \nlands a R cross to face\nlands a L jab to face, lands R cross to face\nlands downward L jab to face\nreferee gets between and stops fight TKO\n"
import re
re.sub('\n', ' ', text, count=0, flags=0)
## "missed R mt kick to low L leg missed L jab missed R mt kick to low L leg lands L mt kick to L leg missed L jab, missed R cross lands L mt kick to L leg, missed R cross to face holding R leg hold starts holding R leg hold continues holding R leg hold continues holding R leg hold continues misses R cross to face loses R leg hold lands R mt kick to L low leg misses L jab to face, misses R cross to face misses L jab to face, misses R cross to face misses L jab to face attempts body waste takedown lands takedown caught in full guard hold caught in full guard hold caught in full guard hold caught in full guard hold caught in full guard hold caught in full guard hold and puts weight on L shoulder collarbone acromian process while lifting off L leg to break full guard caught in full guard hold caught in full guard hold and twisting with R armpit and R leg anchoring into L locked thigh at the inside knee caught in full guard hold and grabbing at L ear with R hand while twisting and lifting out of full guard lock, gains L arm back, breaks full guard lock at ankles breaks full guard hold and standing up while keeping L shin of opponent at chest and bent holding L knee hold starts of opponent while standing up and maneuvering around L side of opponent pushing forward to knock off balance a possible up kick of opponent caught in open guard hold continues and misses downward R hook to head while pushing and twisting L and holding L knee hold continues caught in open guard hold continues and lands downward R cross to head while pushing opponent's leg toward her and turning L and loses L knee hold caught in open guard hold continues and lands L downward cross to face while getting out of open guard completely caught in open guard hold continues caught in open guard hold continues and holding R foot while opponent in open guard caught in open guard hold contnues and moves open guard feet to her R while landing R downward cross to face breaks open guard hold and falls on ground to the side of opponent getting up while attempting a head R arm guillotine of opponent as holding guillotine hold starts locks guillotine around R armpit and neck of opponent while standing full guard lock and holding guillotine hold continues holding guillotine hold continues holding guillotine hold continues takedown of opponent in full guard while holding of guillotine hold continues holding guillotine hold continues holding full guard hold starts and holding guillotine hold continues holding guillotine hold continues holding guillotine hold continues holding guillotine hold continues loses guillotine hold and loses full guard hold push kicks opponent off getting up while L foot being held by opponent getting up from ground holding R arm hold starts and caught in upper body hold holding R arm hold starts and caught in upper body hold holding R arm hold starts and caught in upper body hold holding R arm hold starts and caught in upper body hold holding R arm hold starts and caught in upper body hold holding R arm hold starts and caught in upper body hold holding R arm hold starts and caught in upper body hold holding R arm hold starts and caught in upper body hold holding R arm hold starts and caught in upper body hold holding R arm hold starts and caught in upper body hold holding R arm hold starts and caught in upper body hold holding R arm hold starts and caught in upper body hold holding R arm hold starts and caught in upper body hold holding R arm hold starts and caught in upper body hold holding R arm hold starts and caught in upper body hold holding R arm hold starts and caught in upper body hold holding R arm hold starts and caught in upper body hold holding R arm hold starts and caught in upper body hold caught in R arm hold and caught in upper body hold continues and moves opponent away from side standing control against cage holding R arm hold starts and caught in upper body hold holding R arm hold starts and caught in upper body hold holding R arm hold starts and caught in upper body hold holding R arm hold starts and caught in upper body hold holding R arm hold starts and caught in upper body hold holding R arm hold starts and caught in upper body hold holding R arm hold starts and caught in upper body hold loses R arm hold and caught in upper body hold holding neck hold starts and caught in upper body hold breaks upper body hold to switch sides caught in upper body hold and holding R arm hold starts breaks upper body hold and loses R arm hold and lands a R leg to L leg of opponent sweeping takedown lands slight double leg takedown not on the ground but leaning over opponent caught in open guard hold and lands downward R cross to face, lands downward L cross to face, lands downward R cross to face caught in open guard hold and lands downward R cross to face caught in open guard hold and lands downward R cross to face caught in open guard hold caught in open guard hold caught in open guard hold caught in open guard hold and breaks into opponents open guard hold against cage and lands R downward cross to head caught in open guard hold and lands downward R cross to head, lands downward R cross to head caught in open guard hold caught in open guard hold caught in open guard hold caught in open guard hold caught in open guard hold caught in open guard hold caught in open guard hold caught in open guard hold caught in open guard hold caught in open guard hold and lands R downward cross to head caught in open guard hold and lands R downward cross to head caught in open guard hold caught in open guard hold caught in open guard hold caught in open guard hold caught in open guard hold caught in open guard hold caught in open guard hold caught in open guard hold caught in open guard hold and twists L forearm of opponent at the elbow pushing the hand in open guard hold from standing leaning over position caught in open guard hold caught in open guard hold breaks open guard hold hold caught in full guard hold caught in full guard hold caught in full guard hold caught in full guard hold caught in full guard hold caught in full guard hold caught in full guard hold lands R elbow to face and caught in full guard hold caught in full guard hold caught in full guard hold caught in full guard hold caught in full guard hold breaks full guard hold and caught in open guard hold caught in open guard hold caught in open guard hold lands R downward cross to face and caught in open guard hold caught in open guard hold lands R downward cross to face and caught in open guard hold caught in open guard hold caught in open guard hold caught in open guard hold and misses L downward cross to head, lands R downward cross to head caught in open guard hold caught in open guard hold caught in open guard hold caught in open guard hold caught in open guard hold caught in open guard hold caught in open guard hold caught in open guard hold caught in open guard hold caught in open guard hold caught in open guard hold breaks through leg kicks of open guard and caught in open guard hold lands downward R cross to head and caught in open guard hold lands downward R cross to head and caught in open guard hold lands downward R cross to head and caught in open guard hold, lands downward R cross to head lands downward R cross to head and caught in open guard hold, lands downward R cross to head misses downward R cross to head and caught in open guard hold, misses downward R cross to head lands downward L cross to head and caught in open guard hold, lands downward L cross to head lands downward R cross to head and caught in open guard hold misses downward R cross to head and caught in open guard hold caught in open guard hold caught in open guard hold lands downward R cross to head and caught in open guard hold, lands downward L cross to head misses downward R cross to head and caught in open guard hold, misses downward L cross to head, lands L downward cross to head lands downward R cross to head and caught in open guard hold lands downward R cross to head and caught in open guard hold, lands downward L cross to head lands downward R cross to head and caught in open guard hold lands downward L cross to head and caught in open guard hold misses downward R cross to head and caught in open guard hold, lands L downward cross to head lands downward R cross to head and caught in open guard hold, lands L downward cross to head misses downward R cross to head and caught in open guard hold, misses downward L cross to head misses downward R cross to head and caught in open guard hold, misses downward L cross to head, misses downward R cross to head pressing opponent into ground from the top at opponents shoulders and neck having open guard and legs up off balance removing leverage to kick up and caught in open guard hold caught in open guard hold knee pinned to abdomen and holding L side control hold starts and breaks open guard hold holding side control hold continues lands L downward cross to head and holding side control hold continues lands L downward hook to face and holding side control hold continues, lands L downward elbow to face holding side control hold continues holding side control hold continues holding side control hold continues holding side control hold continues holding side control hold continues L back side control hold with L knee pinned to opponent's L hip and holding side control hold continues holding side control hold continues holding side control hold continues holding side control hold continues holding side control hold continues holding side control hold continues holding side control hold continues holding side control hold continues holding side control hold continues holding a L armpit and neck choke hold starts and holding side control hold continues holding choke hold continues and holding side control hold continues holding choke hold continues and holding side control hold continues holding choke hold continues and holding side control hold continues holding choke hold continues and holding side control hold continues holding choke hold continues and holding side control hold continues holding choke hold continues and holding side control hold continues holding choke hold continues and holding side control hold continues holding choke hold continues and holding side control hold continues holding choke hold continues and holding side control hold continues holding choke hold continues and holding side control hold continues holding choke hold continues and holding side control hold continues holding choke hold continues and holding side control hold continues holding choke hold continues and holding side control hold continues holding choke hold continues and holding side control hold continues holding choke hold continues and holding side control hold continues holding choke hold continues and holding side control hold continues loses choke hold and holding side control hold continues and pins L knee on opponent's abdomen misses R hammer to face holding side control hold continues with knee pinning opponent's abdomen holding side control hold continues lands L downward elbow to the face from pinned side control mount misses L downward elbow to face loses side control hold misses downward R cross to face caught in open guard hold caught in open guard hold caught in open guard hold caught in open guard hold misses downward flying R cross to face and caught in open guard hold caught in open guard hold caught in open guard hold caught in open guard hold caught in open guard hold caught in open guard hold caught in open guard hold caught in open guard hold caught in open guard hold caught in open guard hold caught in open guard hold caught in open guard hold round ends caught in open guard hold misses L jab misses R mt kick to low L lead leg misses R mt kick to low L lead leg misses L jab misses R mt kick to low L lead leg gets up out of takedown misses R cross to face misses R mt kick to low L lead leg misses R cross to face misses R cross to face lands body throw takedown gets up misses illegal right knee to the face misses L jab misses L jab, misses R cross to face misses R cross to face misses L jab lands R cross misses R cross to face misses R cross to face misses R cross to face misses L jab to face, ducks to avoid body takedown from missed L jab misses R cross to face misses L jab lands R cross to face misses R cross to face lands L hook to face misses R cross to face lands R cross lands L upper to face misses R upper to face, misses R upper to face lands L knee to face misses L jab, misses R cross to face lands L jab to face misses R cross to face misses R mt kick to inside R leg lands L jab to face, lands R cross to face misses R cross to face lands 2 hammer hits R face on top back lands 2 hammer hits L face on top back lands 2 hammer hits L face on top back lands RNC flips on back w RNC misses R mt kick to low L lead leg misses R cross misses R mt kick to low L lead leg misses R mt kick to low L lead leg misses R mt kick to low L lead leg misses L jab to face misses R mt kick to low L lead leg feigns L mt kick to inside L lead leg missses R mt kick to low L lead leg misses R mt kick to low L lead leg lands L jab to body, misses R cross to face misses L jab to body misses R mt kick to low L lead leg misses R mt kick to low L lead leg misses R mt kick to low L lead leg misses L jab to body misses R mt kick to low L lead leg misses L jab to face, misses R cross to face pushes off with R forearm misses L jab to body lands R mt kick to low L back of knee, misses L jab, misses R cross blocks L jab by raising L Shoulder, misses R cross to face pushes Face with R hand and away misses L jab to body misses L jab to body, leans back from R cross to face misses R cross misses L jab to face misses L jab to body misses R cross to face misses L jab to face ducks misses R mt kick to low L lead leg ducks and clinches waist pushes to cage lands R upper to face misses R cross to face lands R mt kick to low L back of knee blocks L hook with R overhead arm misses R mt kick to low L lead leg lands R push kick to body misses L jab, misses R cross to face misses R push kick to body misses L jab to face misses R cross to face, misses R cross to face misses R mt kick to low L lead leg misses R cross to face misses R mt kick to body ducks misses R upper to face misses L jab, misses R cross to face misses L jab to body feigns L mt kick to head misses L jab, misses R cross to face misses R mt kick to low L lead leg misses R cross to face misses L jab, misses R cross to face misses L mt kick to inside L lead leg lands L knee to body with neck clinch misses L jab to face misses R mt kick to low L lead leg misses R cross to face misses R cross misses L jab misses R push kick to body missed a L jab to face missed a R cross to face missed a R cross to face missed a R push kick to body missed a R cross to face, lands a L jab to face missed a L jab to face, lands a R cross to face missed a R cross, missed a L jab to face, missed a R cross to face missed a R push kick to body lands a R cross to face turns body to side gets out of clinch lands L jab to face, misses R cross to face misses L jab to face, misses R cross to face, lands L jab to face face misses R cross to face, misses L upper misses R cross to body lands L jab to face lands R cross to face, ducks R cross left misses L jab to face, misses R cross to face, misses R upper to face lands L jab to face, misses R cross to face misses L jab to face, lands R cross to face runs to and feigns a R cross to face lands a R cross to face misses R cross to face lands a R cross to face lands a L jab to face, lands R cross to face lands downward L jab to face referee gets between and stops fight TKO missed R mt kick to low L leg missed L jab missed R mt kick to low L leg lands L mt kick to L leg missed L jab, missed R cross lands L mt kick to L leg, missed R cross to face holding R leg hold starts holding R leg hold continues holding R leg hold continues holding R leg hold continues misses R cross to face loses R leg hold lands R mt kick to L low leg misses L jab to face, misses R cross to face misses L jab to face, misses R cross to face misses L jab to face attempts body waste takedown lands takedown caught in full guard hold caught in full guard hold caught in full guard hold caught in full guard hold caught in full guard hold caught in full guard hold and puts weight on L shoulder collarbone acromian process while lifting off L leg to break full guard caught in full guard hold caught in full guard hold and twisting with R armpit and R leg anchoring into L locked thigh at the inside knee caught in full guard hold and grabbing at L ear with R hand while twisting and lifting out of full guard lock, gains L arm back, breaks full guard lock at ankles breaks full guard hold and standing up while keeping L shin of opponent at chest and bent holding L knee hold starts of opponent while standing up and maneuvering around L side of opponent pushing forward to knock off balance a possible up kick of opponent caught in open guard hold continues and misses downward R hook to head while pushing and twisting L and holding L knee hold continues caught in open guard hold continues and lands downward R cross to head while pushing opponent's leg toward her and turning L and loses L knee hold caught in open guard hold continues and lands L downward cross to face while getting out of open guard completely caught in open guard hold continues caught in open guard hold continues and holding R foot while opponent in open guard caught in open guard hold contnues and moves open guard feet to her R while landing R downward cross to face breaks open guard hold and falls on ground to the side of opponent getting up while attempting a head R arm guillotine of opponent as holding guillotine hold starts locks guillotine around R armpit and neck of opponent while standing full guard lock and holding guillotine hold continues holding guillotine hold continues holding guillotine hold continues takedown of opponent in full guard while holding of guillotine hold continues holding guillotine hold continues holding full guard hold starts and holding guillotine hold continues holding guillotine hold continues holding guillotine hold continues holding guillotine hold continues loses guillotine hold and loses full guard hold push kicks opponent off getting up while L foot being held by opponent getting up from ground holding R arm hold starts and caught in upper body hold holding R arm hold starts and caught in upper body hold holding R arm hold starts and caught in upper body hold holding R arm hold starts and caught in upper body hold holding R arm hold starts and caught in upper body hold holding R arm hold starts and caught in upper body hold holding R arm hold starts and caught in upper body hold holding R arm hold starts and caught in upper body hold holding R arm hold starts and caught in upper body hold holding R arm hold starts and caught in upper body hold holding R arm hold starts and caught in upper body hold holding R arm hold starts and caught in upper body hold holding R arm hold starts and caught in upper body hold holding R arm hold starts and caught in upper body hold holding R arm hold starts and caught in upper body hold holding R arm hold starts and caught in upper body hold holding R arm hold starts and caught in upper body hold holding R arm hold starts and caught in upper body hold caught in R arm hold and caught in upper body hold continues and moves opponent away from side standing control against cage holding R arm hold starts and caught in upper body hold holding R arm hold starts and caught in upper body hold holding R arm hold starts and caught in upper body hold holding R arm hold starts and caught in upper body hold holding R arm hold starts and caught in upper body hold holding R arm hold starts and caught in upper body hold holding R arm hold starts and caught in upper body hold loses R arm hold and caught in upper body hold holding neck hold starts and caught in upper body hold breaks upper body hold to switch sides caught in upper body hold and holding R arm hold starts breaks upper body hold and loses R arm hold and lands a R leg to L leg of opponent sweeping takedown lands slight double leg takedown not on the ground but leaning over opponent caught in open guard hold and lands downward R cross to face, lands downward L cross to face, lands downward R cross to face caught in open guard hold and lands downward R cross to face caught in open guard hold and lands downward R cross to face caught in open guard hold caught in open guard hold caught in open guard hold caught in open guard hold and breaks into opponents open guard hold against cage and lands R downward cross to head caught in open guard hold and lands downward R cross to head, lands downward R cross to head caught in open guard hold caught in open guard hold caught in open guard hold caught in open guard hold caught in open guard hold caught in open guard hold caught in open guard hold caught in open guard hold caught in open guard hold caught in open guard hold and lands R downward cross to head caught in open guard hold and lands R downward cross to head caught in open guard hold caught in open guard hold caught in open guard hold caught in open guard hold caught in open guard hold caught in open guard hold caught in open guard hold caught in open guard hold caught in open guard hold and twists L forearm of opponent at the elbow pushing the hand in open guard hold from standing leaning over position caught in open guard hold caught in open guard hold breaks open guard hold hold caught in full guard hold caught in full guard hold caught in full guard hold caught in full guard hold caught in full guard hold caught in full guard hold caught in full guard hold lands R elbow to face and caught in full guard hold caught in full guard hold caught in full guard hold caught in full guard hold caught in full guard hold breaks full guard hold and caught in open guard hold caught in open guard hold caught in open guard hold lands R downward cross to face and caught in open guard hold caught in open guard hold lands R downward cross to face and caught in open guard hold caught in open guard hold caught in open guard hold caught in open guard hold and misses L downward cross to head, lands R downward cross to head caught in open guard hold caught in open guard hold caught in open guard hold caught in open guard hold caught in open guard hold caught in open guard hold caught in open guard hold caught in open guard hold caught in open guard hold caught in open guard hold caught in open guard hold breaks through leg kicks of open guard and caught in open guard hold lands downward R cross to head and caught in open guard hold lands downward R cross to head and caught in open guard hold lands downward R cross to head and caught in open guard hold, lands downward R cross to head lands downward R cross to head and caught in open guard hold, lands downward R cross to head misses downward R cross to head and caught in open guard hold, misses downward R cross to head lands downward L cross to head and caught in open guard hold, lands downward L cross to head lands downward R cross to head and caught in open guard hold misses downward R cross to head and caught in open guard hold caught in open guard hold caught in open guard hold lands downward R cross to head and caught in open guard hold, lands downward L cross to head misses downward R cross to head and caught in open guard hold, misses downward L cross to head, lands L downward cross to head lands downward R cross to head and caught in open guard hold lands downward R cross to head and caught in open guard hold, lands downward L cross to head lands downward R cross to head and caught in open guard hold lands downward L cross to head and caught in open guard hold misses downward R cross to head and caught in open guard hold, lands L downward cross to head lands downward R cross to head and caught in open guard hold, lands L downward cross to head misses downward R cross to head and caught in open guard hold, misses downward L cross to head misses downward R cross to head and caught in open guard hold, misses downward L cross to head, misses downward R cross to head pressing opponent into ground from the top at opponents shoulders and neck having open guard and legs up off balance removing leverage to kick up and caught in open guard hold caught in open guard hold knee pinned to abdomen and holding L side control hold starts and breaks open guard hold holding side control hold continues lands L downward cross to head and holding side control hold continues lands L downward hook to face and holding side control hold continues, lands L downward elbow to face holding side control hold continues holding side control hold continues holding side control hold continues holding side control hold continues holding side control hold continues L back side control hold with L knee pinned to opponent's L hip and holding side control hold continues holding side control hold continues holding side control hold continues holding side control hold continues holding side control hold continues holding side control hold continues holding side control hold continues holding side control hold continues holding side control hold continues holding a L armpit and neck choke hold starts and holding side control hold continues holding choke hold continues and holding side control hold continues holding choke hold continues and holding side control hold continues holding choke hold continues and holding side control hold continues holding choke hold continues and holding side control hold continues holding choke hold continues and holding side control hold continues holding choke hold continues and holding side control hold continues holding choke hold continues and holding side control hold continues holding choke hold continues and holding side control hold continues holding choke hold continues and holding side control hold continues holding choke hold continues and holding side control hold continues holding choke hold continues and holding side control hold continues holding choke hold continues and holding side control hold continues holding choke hold continues and holding side control hold continues holding choke hold continues and holding side control hold continues holding choke hold continues and holding side control hold continues holding choke hold continues and holding side control hold continues loses choke hold and holding side control hold continues and pins L knee on opponent's abdomen misses R hammer to face holding side control hold continues with knee pinning opponent's abdomen holding side control hold continues lands L downward elbow to the face from pinned side control mount misses L downward elbow to face loses side control hold misses downward R cross to face caught in open guard hold caught in open guard hold caught in open guard hold caught in open guard hold misses downward flying R cross to face and caught in open guard hold caught in open guard hold caught in open guard hold caught in open guard hold caught in open guard hold caught in open guard hold caught in open guard hold caught in open guard hold caught in open guard hold caught in open guard hold caught in open guard hold caught in open guard hold round ends caught in open guard hold misses L jab misses R mt kick to low L lead leg misses R mt kick to low L lead leg misses L jab misses R mt kick to low L lead leg gets up out of takedown misses R cross to face misses R mt kick to low L lead leg misses R cross to face misses R cross to face lands body throw takedown gets up misses illegal right knee to the face misses L jab misses L jab, misses R cross to face misses R cross to face misses L jab lands R cross misses R cross to face misses R cross to face misses R cross to face misses L jab to face, ducks to avoid body takedown from missed L jab misses R cross to face misses L jab lands R cross to face misses R cross to face lands L hook to face misses R cross to face lands R cross lands L upper to face misses R upper to face, misses R upper to face lands L knee to face misses L jab, misses R cross to face lands L jab to face misses R cross to face misses R mt kick to inside R leg lands L jab to face, lands R cross to face misses R cross to face lands 2 hammer hits R face on top back lands 2 hammer hits L face on top back lands 2 hammer hits L face on top back lands RNC flips on back w RNC misses R mt kick to low L lead leg misses R cross misses R mt kick to low L lead leg misses R mt kick to low L lead leg misses R mt kick to low L lead leg misses L jab to face misses R mt kick to low L lead leg feigns L mt kick to inside L lead leg missses R mt kick to low L lead leg misses R mt kick to low L lead leg lands L jab to body, misses R cross to face misses L jab to body misses R mt kick to low L lead leg misses R mt kick to low L lead leg misses R mt kick to low L lead leg misses L jab to body misses R mt kick to low L lead leg misses L jab to face, misses R cross to face pushes off with R forearm misses L jab to body lands R mt kick to low L back of knee, misses L jab, misses R cross blocks L jab by raising L Shoulder, misses R cross to face pushes Face with R hand and away misses L jab to body misses L jab to body, leans back from R cross to face misses R cross misses L jab to face misses L jab to body misses R cross to face misses L jab to face ducks misses R mt kick to low L lead leg ducks and clinches waist pushes to cage lands R upper to face misses R cross to face lands R mt kick to low L back of knee blocks L hook with R overhead arm misses R mt kick to low L lead leg lands R push kick to body misses L jab, misses R cross to face misses R push kick to body misses L jab to face misses R cross to face, misses R cross to face misses R mt kick to low L lead leg misses R cross to face misses R mt kick to body ducks misses R upper to face misses L jab, misses R cross to face misses L jab to body feigns L mt kick to head misses L jab, misses R cross to face misses R mt kick to low L lead leg misses R cross to face misses L jab, misses R cross to face misses L mt kick to inside L lead leg lands L knee to body with neck clinch misses L jab to face misses R mt kick to low L lead leg misses R cross to face misses R cross misses L jab misses R push kick to body missed a L jab to face missed a R cross to face missed a R cross to face missed a R push kick to body missed a R cross to face, lands a L jab to face missed a L jab to face, lands a R cross to face missed a R cross, missed a L jab to face, missed a R cross to face missed a R push kick to body lands a R cross to face turns body to side gets out of clinch lands L jab to face, misses R cross to face misses L jab to face, misses R cross to face, lands L jab to face face misses R cross to face, misses L upper misses R cross to body lands L jab to face lands R cross to face, ducks R cross left misses L jab to face, misses R cross to face, misses R upper to face lands L jab to face, misses R cross to face misses L jab to face, lands R cross to face runs to and feigns a R cross to face lands a R cross to face misses R cross to face lands a R cross to face lands a L jab to face, lands R cross to face lands downward L jab to face referee gets between and stops fight TKO missed R mt kick to low L leg missed L jab missed R mt kick to low L leg lands L mt kick to L leg missed L jab, missed R cross lands L mt kick to L leg, missed R cross to face holding R leg hold starts holding R leg hold continues holding R leg hold continues holding R leg hold continues misses R cross to face loses R leg hold lands R mt kick to L low leg misses L jab to face, misses R cross to face misses L jab to face, misses R cross to face misses L jab to face attempts body waste takedown lands takedown caught in full guard hold caught in full guard hold caught in full guard hold caught in full guard hold caught in full guard hold caught in full guard hold and puts weight on L shoulder collarbone acromian process while lifting off L leg to break full guard caught in full guard hold caught in full guard hold and twisting with R armpit and R leg anchoring into L locked thigh at the inside knee caught in full guard hold and grabbing at L ear with R hand while twisting and lifting out of full guard lock, gains L arm back, breaks full guard lock at ankles breaks full guard hold and standing up while keeping L shin of opponent at chest and bent holding L knee hold starts of opponent while standing up and maneuvering around L side of opponent pushing forward to knock off balance a possible up kick of opponent caught in open guard hold continues and misses downward R hook to head while pushing and twisting L and holding L knee hold continues caught in open guard hold continues and lands downward R cross to head while pushing opponent's leg toward her and turning L and loses L knee hold caught in open guard hold continues and lands L downward cross to face while getting out of open guard completely caught in open guard hold continues caught in open guard hold continues and holding R foot while opponent in open guard caught in open guard hold contnues and moves open guard feet to her R while landing R downward cross to face breaks open guard hold and falls on ground to the side of opponent getting up while attempting a head R arm guillotine of opponent as holding guillotine hold starts locks guillotine around R armpit and neck of opponent while standing full guard lock and holding guillotine hold continues holding guillotine hold continues holding guillotine hold continues takedown of opponent in full guard while holding of guillotine hold continues holding guillotine hold continues holding full guard hold starts and holding guillotine hold continues holding guillotine hold continues holding guillotine hold continues holding guillotine hold continues loses guillotine hold and loses full guard hold push kicks opponent off getting up while L foot being held by opponent getting up from ground holding R arm hold starts and caught in upper body hold holding R arm hold starts and caught in upper body hold holding R arm hold starts and caught in upper body hold holding R arm hold starts and caught in upper body hold holding R arm hold starts and caught in upper body hold holding R arm hold starts and caught in upper body hold holding R arm hold starts and caught in upper body hold holding R arm hold starts and caught in upper body hold holding R arm hold starts and caught in upper body hold holding R arm hold starts and caught in upper body hold holding R arm hold starts and caught in upper body hold holding R arm hold starts and caught in upper body hold holding R arm hold starts and caught in upper body hold holding R arm hold starts and caught in upper body hold holding R arm hold starts and caught in upper body hold holding R arm hold starts and caught in upper body hold holding R arm hold starts and caught in upper body hold holding R arm hold starts and caught in upper body hold caught in R arm hold and caught in upper body hold continues and moves opponent away from side standing control against cage holding R arm hold starts and caught in upper body hold holding R arm hold starts and caught in upper body hold holding R arm hold starts and caught in upper body hold holding R arm hold starts and caught in upper body hold holding R arm hold starts and caught in upper body hold holding R arm hold starts and caught in upper body hold holding R arm hold starts and caught in upper body hold loses R arm hold and caught in upper body hold holding neck hold starts and caught in upper body hold breaks upper body hold to switch sides caught in upper body hold and holding R arm hold starts breaks upper body hold and loses R arm hold and lands a R leg to L leg of opponent sweeping takedown lands slight double leg takedown not on the ground but leaning over opponent caught in open guard hold and lands downward R cross to face, lands downward L cross to face, lands downward R cross to face caught in open guard hold and lands downward R cross to face caught in open guard hold and lands downward R cross to face caught in open guard hold caught in open guard hold caught in open guard hold caught in open guard hold and breaks into opponents open guard hold against cage and lands R downward cross to head caught in open guard hold and lands downward R cross to head, lands downward R cross to head caught in open guard hold caught in open guard hold caught in open guard hold caught in open guard hold caught in open guard hold caught in open guard hold caught in open guard hold caught in open guard hold caught in open guard hold caught in open guard hold and lands R downward cross to head caught in open guard hold and lands R downward cross to head caught in open guard hold caught in open guard hold caught in open guard hold caught in open guard hold caught in open guard hold caught in open guard hold caught in open guard hold caught in open guard hold caught in open guard hold and twists L forearm of opponent at the elbow pushing the hand in open guard hold from standing leaning over position caught in open guard hold caught in open guard hold breaks open guard hold hold caught in full guard hold caught in full guard hold caught in full guard hold caught in full guard hold caught in full guard hold caught in full guard hold caught in full guard hold lands R elbow to face and caught in full guard hold caught in full guard hold caught in full guard hold caught in full guard hold caught in full guard hold breaks full guard hold and caught in open guard hold caught in open guard hold caught in open guard hold lands R downward cross to face and caught in open guard hold caught in open guard hold lands R downward cross to face and caught in open guard hold caught in open guard hold caught in open guard hold caught in open guard hold and misses L downward cross to head, lands R downward cross to head caught in open guard hold caught in open guard hold caught in open guard hold caught in open guard hold caught in open guard hold caught in open guard hold caught in open guard hold caught in open guard hold caught in open guard hold caught in open guard hold caught in open guard hold breaks through leg kicks of open guard and caught in open guard hold lands downward R cross to head and caught in open guard hold lands downward R cross to head and caught in open guard hold lands downward R cross to head and caught in open guard hold, lands downward R cross to head lands downward R cross to head and caught in open guard hold, lands downward R cross to head misses downward R cross to head and caught in open guard hold, misses downward R cross to head lands downward L cross to head and caught in open guard hold, lands downward L cross to head lands downward R cross to head and caught in open guard hold misses downward R cross to head and caught in open guard hold caught in open guard hold caught in open guard hold lands downward R cross to head and caught in open guard hold, lands downward L cross to head misses downward R cross to head and caught in open guard hold, misses downward L cross to head, lands L downward cross to head lands downward R cross to head and caught in open guard hold lands downward R cross to head and caught in open guard hold, lands downward L cross to head lands downward R cross to head and caught in open guard hold lands downward L cross to head and caught in open guard hold misses downward R cross to head and caught in open guard hold, lands L downward cross to head lands downward R cross to head and caught in open guard hold, lands L downward cross to head misses downward R cross to head and caught in open guard hold, misses downward L cross to head misses downward R cross to head and caught in open guard hold, misses downward L cross to head, misses downward R cross to head pressing opponent into ground from the top at opponents shoulders and neck having open guard and legs up off balance removing leverage to kick up and caught in open guard hold caught in open guard hold knee pinned to abdomen and holding L side control hold starts and breaks open guard hold holding side control hold continues lands L downward cross to head and holding side control hold continues lands L downward hook to face and holding side control hold continues, lands L downward elbow to face holding side control hold continues holding side control hold continues holding side control hold continues holding side control hold continues holding side control hold continues L back side control hold with L knee pinned to opponent's L hip and holding side control hold continues holding side control hold continues holding side control hold continues holding side control hold continues holding side control hold continues holding side control hold continues holding side control hold continues holding side control hold continues holding side control hold continues holding a L armpit and neck choke hold starts and holding side control hold continues holding choke hold continues and holding side control hold continues holding choke hold continues and holding side control hold continues holding choke hold continues and holding side control hold continues holding choke hold continues and holding side control hold continues holding choke hold continues and holding side control hold continues holding choke hold continues and holding side control hold continues holding choke hold continues and holding side control hold continues holding choke hold continues and holding side control hold continues holding choke hold continues and holding side control hold continues holding choke hold continues and holding side control hold continues holding choke hold continues and holding side control hold continues holding choke hold continues and holding side control hold continues holding choke hold continues and holding side control hold continues holding choke hold continues and holding side control hold continues holding choke hold continues and holding side control hold continues holding choke hold continues and holding side control hold continues loses choke hold and holding side control hold continues and pins L knee on opponent's abdomen misses R hammer to face holding side control hold continues with knee pinning opponent's abdomen holding side control hold continues lands L downward elbow to the face from pinned side control mount misses L downward elbow to face loses side control hold misses downward R cross to face caught in open guard hold caught in open guard hold caught in open guard hold caught in open guard hold misses downward flying R cross to face and caught in open guard hold caught in open guard hold caught in open guard hold caught in open guard hold caught in open guard hold caught in open guard hold caught in open guard hold caught in open guard hold caught in open guard hold caught in open guard hold caught in open guard hold caught in open guard hold round ends caught in open guard hold misses L jab misses R mt kick to low L lead leg misses R mt kick to low L lead leg misses L jab misses R mt kick to low L lead leg gets up out of takedown misses R cross to face misses R mt kick to low L lead leg misses R cross to face misses R cross to face lands body throw takedown gets up misses illegal right knee to the face misses L jab misses L jab, misses R cross to face misses R cross to face misses L jab lands R cross misses R cross to face misses R cross to face misses R cross to face misses L jab to face, ducks to avoid body takedown from missed L jab misses R cross to face misses L jab lands R cross to face misses R cross to face lands L hook to face misses R cross to face lands R cross lands L upper to face misses R upper to face, misses R upper to face lands L knee to face misses L jab, misses R cross to face lands L jab to face misses R cross to face misses R mt kick to inside R leg lands L jab to face, lands R cross to face misses R cross to face lands 2 hammer hits R face on top back lands 2 hammer hits L face on top back lands 2 hammer hits L face on top back lands RNC flips on back w RNC misses R mt kick to low L lead leg misses R cross misses R mt kick to low L lead leg misses R mt kick to low L lead leg misses R mt kick to low L lead leg misses L jab to face misses R mt kick to low L lead leg feigns L mt kick to inside L lead leg missses R mt kick to low L lead leg misses R mt kick to low L lead leg lands L jab to body, misses R cross to face misses L jab to body misses R mt kick to low L lead leg misses R mt kick to low L lead leg misses R mt kick to low L lead leg misses L jab to body misses R mt kick to low L lead leg misses L jab to face, misses R cross to face pushes off with R forearm misses L jab to body lands R mt kick to low L back of knee, misses L jab, misses R cross blocks L jab by raising L Shoulder, misses R cross to face pushes Face with R hand and away misses L jab to body misses L jab to body, leans back from R cross to face misses R cross misses L jab to face misses L jab to body misses R cross to face misses L jab to face ducks misses R mt kick to low L lead leg ducks and clinches waist pushes to cage lands R upper to face misses R cross to face lands R mt kick to low L back of knee blocks L hook with R overhead arm misses R mt kick to low L lead leg lands R push kick to body misses L jab, misses R cross to face misses R push kick to body misses L jab to face misses R cross to face, misses R cross to face misses R mt kick to low L lead leg misses R cross to face misses R mt kick to body ducks misses R upper to face misses L jab, misses R cross to face misses L jab to body feigns L mt kick to head misses L jab, misses R cross to face misses R mt kick to low L lead leg misses R cross to face misses L jab, misses R cross to face misses L mt kick to inside L lead leg lands L knee to body with neck clinch misses L jab to face misses R mt kick to low L lead leg misses R cross to face misses R cross misses L jab misses R push kick to body missed a L jab to face missed a R cross to face missed a R cross to face missed a R push kick to body missed a R cross to face, lands a L jab to face missed a L jab to face, lands a R cross to face missed a R cross, missed a L jab to face, missed a R cross to face missed a R push kick to body lands a R cross to face turns body to side gets out of clinch lands L jab to face, misses R cross to face misses L jab to face, misses R cross to face, lands L jab to face face misses R cross to face, misses L upper misses R cross to body lands L jab to face lands R cross to face, ducks R cross left misses L jab to face, misses R cross to face, misses R upper to face lands L jab to face, misses R cross to face misses L jab to face, lands R cross to face runs to and feigns a R cross to face lands a R cross to face misses R cross to face lands a R cross to face lands a L jab to face, lands R cross to face lands downward L jab to face referee gets between and stops fight TKO "
chars = set(text)
char2int = {ch:i for i,ch in enumerate(chars)}
int2char = dict(enumerate(chars))
text_ints = np.array([char2int[ch] for ch in text],
dtype=np.int32)
def reshape_data(sequence, batch_size, num_steps):
tot_batch_length = batch_size * num_steps
num_batches = int(len(sequence) / tot_batch_length)
if num_batches*tot_batch_length + 1 > len(sequence):
num_batches = num_batches - 1
## Truncate the sequence at the end to get rid of
## remaining charcaters that do not make a full batch
x = sequence[0 : num_batches*tot_batch_length]
y = sequence[1 : num_batches*tot_batch_length + 1]
## Split x & y into a list batches of sequences:
x_batch_splits = np.split(x, batch_size)
y_batch_splits = np.split(y, batch_size)
## Stack the batches together
## batch_size x tot_batch_length
x = np.stack(x_batch_splits)
y = np.stack(y_batch_splits)
return x, y
## Testing:
train_x, train_y = reshape_data(text_ints, 64, 10)
print(train_x.shape)
## (64, 740)
print(train_x[0, :10])
## [29 4 34 34 31 28 17 23 17 29]
print(train_y[0, :10])
## [ 4 34 34 31 28 17 23 17 29 8]
print(''.join(int2char[i] for i in train_x[0, :50]))
## missed R mt kick to low L leg
## missed L jab
## missed
np.random.seed(123)
def create_batch_generator(data_x, data_y, num_steps):
batch_size, tot_batch_length = data_x.shape
num_batches = int(tot_batch_length/num_steps)
for b in range(num_batches):
yield (data_x[:, b*num_steps: (b+1)*num_steps],
data_y[:, b*num_steps: (b+1)*num_steps])
bgen = create_batch_generator(train_x[:,:100], train_y[:,:100], 15)
for b in bgen:
print(b[0].shape, b[1].shape, end=' ')
print(''.join(int2char[i] for i in b[0][0,:]).replace('\n', '*'), ' ',
''.join(int2char[i] for i in b[1][0,:]).replace('\n', '*'))
## (64, 15) (64, 15) missed R mt kic issed R mt kick
## (64, 15) (64, 15) k to low L leg* to low L leg*m
## (64, 15) (64, 15) missed L jab*mi issed L jab*mis
## (64, 15) (64, 15) ssed R mt kick sed R mt kick t
## (64, 15) (64, 15) to low L leg*la o low L leg*lan
## (64, 15) (64, 15) nds L mt kick t ds L mt kick to
import tensorflow as tf
import os
class CharRNN(object):
def __init__(self, num_classes, batch_size=64,
num_steps=100, lstm_size=128,
num_layers=1, learning_rate=0.001,
keep_prob=0.5, grad_clip=5,
sampling=False):
self.num_classes = num_classes
self.batch_size = batch_size
self.num_steps = num_steps
self.lstm_size = lstm_size
self.num_layers = num_layers
self.learning_rate = learning_rate
self.keep_prob = keep_prob
self.grad_clip = grad_clip
self.g = tf.Graph()
with self.g.as_default():
tf.set_random_seed(123)
self.build(sampling=sampling)
self.saver = tf.train.Saver()
self.init_op = tf.global_variables_initializer()
def build(self, sampling):
if sampling == True:
batch_size, num_steps = 1, 1
else:
batch_size = self.batch_size
num_steps = self.num_steps
tf_x = tf.placeholder(tf.int32,
shape=[batch_size, num_steps],
name='tf_x')
tf_y = tf.placeholder(tf.int32,
shape=[batch_size, num_steps],
name='tf_y')
tf_keepprob = tf.placeholder(tf.float32,
name='tf_keepprob')
# One-hot encoding:
x_onehot = tf.one_hot(tf_x, depth=self.num_classes)
y_onehot = tf.one_hot(tf_y, depth=self.num_classes)
### Build the multi-layer RNN cells
cells = tf.contrib.rnn.MultiRNNCell(
[tf.contrib.rnn.DropoutWrapper(
tf.contrib.rnn.BasicLSTMCell(self.lstm_size),
output_keep_prob=tf_keepprob)
for _ in range(self.num_layers)])
## Define the initial state
self.initial_state = cells.zero_state(
batch_size, tf.float32)
## Run each sequence step through the RNN
lstm_outputs, self.final_state = tf.nn.dynamic_rnn(
cells, x_onehot,
initial_state=self.initial_state)
print(' << lstm_outputs >>', lstm_outputs)
seq_output_reshaped = tf.reshape(
lstm_outputs,
shape=[-1, self.lstm_size],
name='seq_output_reshaped')
logits = tf.layers.dense(
inputs=seq_output_reshaped,
units=self.num_classes,
activation=None,
name='logits')
proba = tf.nn.softmax(
logits,
name='probabilities')
print(proba)
y_reshaped = tf.reshape(
y_onehot,
shape=[-1, self.num_classes],
name='y_reshaped')
cost = tf.reduce_mean(
tf.nn.softmax_cross_entropy_with_logits(
logits=logits,
labels=y_reshaped),
name='cost')
# Gradient clipping to avoid "exploding gradients"
tvars = tf.trainable_variables()
grads, _ = tf.clip_by_global_norm(
tf.gradients(cost, tvars),
self.grad_clip)
optimizer = tf.train.AdamOptimizer(self.learning_rate)
train_op = optimizer.apply_gradients(
zip(grads, tvars),
name='train_op')
def train(self, train_x, train_y,
num_epochs, ckpt_dir='./model/'):
## Create the checkpoint directory
## if does not exists
if not os.path.exists(ckpt_dir):
os.mkdir(ckpt_dir)
with tf.Session(graph=self.g) as sess:
sess.run(self.init_op)
n_batches = int(train_x.shape[1]/self.num_steps)
iterations = n_batches * num_epochs
for epoch in range(num_epochs):
# Train network
new_state = sess.run(self.initial_state)
loss = 0
## Minibatch generator:
bgen = create_batch_generator(
train_x, train_y, self.num_steps)
for b, (batch_x, batch_y) in enumerate(bgen, 1):
iteration = epoch*n_batches + b
feed = {'tf_x:0': batch_x,
'tf_y:0': batch_y,
'tf_keepprob:0': self.keep_prob,
self.initial_state : new_state}
batch_cost, _, new_state = sess.run(
['cost:0', 'train_op',
self.final_state],
feed_dict=feed)
if iteration % 10 == 0:
print('Epoch %d/%d Iteration %d'
'| Training loss: %.4f' % (
epoch + 1, num_epochs,
iteration, batch_cost))
## Save the trained model
self.saver.save(
sess, os.path.join(
ckpt_dir, 'language_modeling.ckpt'))
def sample(self, output_length,
ckpt_dir, starter_seq="The "):
observed_seq = [ch for ch in starter_seq]
with tf.Session(graph=self.g) as sess:
self.saver.restore(
sess,
tf.train.latest_checkpoint(ckpt_dir))
## 1: run the model using the starter sequence
new_state = sess.run(self.initial_state)
for ch in starter_seq:
x = np.zeros((1, 1))
x[0,0] = char2int[ch]
feed = {'tf_x:0': x,
'tf_keepprob:0': 1.0,
self.initial_state: new_state}
proba, new_state = sess.run(
['probabilities:0', self.final_state],
feed_dict=feed)
ch_id = get_top_char(proba, len(chars))
observed_seq.append(int2char[ch_id])
## 2: run the model using the updated observed_seq
for i in range(output_length):
x[0,0] = ch_id
feed = {'tf_x:0': x,
'tf_keepprob:0': 1.0,
self.initial_state: new_state}
proba, new_state = sess.run(
['probabilities:0', self.final_state],
feed_dict=feed)
ch_id = get_top_char(proba, len(chars))
observed_seq.append(int2char[ch_id])
return ''.join(observed_seq)
def get_top_char(probas, char_size, top_n=5):
p = np.squeeze(probas)
p[np.argsort(p)[:-top_n]] = 0.0
p = p / np.sum(p)
ch_id = np.random.choice(char_size, 1, p=p)[0]
return ch_id
batch_size = 64
num_steps = 100
train_x, train_y = reshape_data(text_ints,
batch_size,
num_steps)
rnn = CharRNN(num_classes=len(chars), batch_size=batch_size)
## << lstm_outputs >> Tensor("rnn/transpose_1:0", shape=(64, 100, 128), dtype=float32)
## Tensor("probabilities:0", shape=(6400, 37), dtype=float32)
##
## W0530 15:14:34.507688 1140 deprecation.py:323] From <string>:85: softmax_cross_entropy_with_logits (from tensorflow.python.ops.nn_ops) is deprecated and will be removed in a future version.
## Instructions for updating:
##
## Future major versions of TensorFlow will allow gradients to flow
## into the labels input on backprop by default.
##
## See `tf.nn.softmax_cross_entropy_with_logits_v2`.
rnn.train(train_x, train_y,
num_epochs=100,
#if you don't have this checkpoint directory, it is made to store results
ckpt_dir='./model-100/')
## Epoch 2/100 Iteration 10| Training loss: 3.2478
## Epoch 3/100 Iteration 20| Training loss: 3.0689
## Epoch 5/100 Iteration 30| Training loss: 3.0106
## Epoch 6/100 Iteration 40| Training loss: 2.9797
## Epoch 8/100 Iteration 50| Training loss: 2.9838
## Epoch 9/100 Iteration 60| Training loss: 2.9011
## Epoch 10/100 Iteration 70| Training loss: 2.8513
## Epoch 12/100 Iteration 80| Training loss: 2.8235
## Epoch 13/100 Iteration 90| Training loss: 2.7495
## Epoch 15/100 Iteration 100| Training loss: 2.6615
## Epoch 16/100 Iteration 110| Training loss: 2.6084
## Epoch 18/100 Iteration 120| Training loss: 2.5625
## Epoch 19/100 Iteration 130| Training loss: 2.3948
## Epoch 20/100 Iteration 140| Training loss: 2.3050
## Epoch 22/100 Iteration 150| Training loss: 2.2057
## Epoch 23/100 Iteration 160| Training loss: 2.1029
## Epoch 25/100 Iteration 170| Training loss: 1.9925
## Epoch 26/100 Iteration 180| Training loss: 2.0119
## Epoch 28/100 Iteration 190| Training loss: 1.9892
## Epoch 29/100 Iteration 200| Training loss: 1.7708
## Epoch 30/100 Iteration 210| Training loss: 1.6994
## Epoch 32/100 Iteration 220| Training loss: 1.6395
## Epoch 33/100 Iteration 230| Training loss: 1.5454
## Epoch 35/100 Iteration 240| Training loss: 1.4910
## Epoch 36/100 Iteration 250| Training loss: 1.5194
## Epoch 38/100 Iteration 260| Training loss: 1.5490
## Epoch 39/100 Iteration 270| Training loss: 1.3288
## Epoch 40/100 Iteration 280| Training loss: 1.2765
## Epoch 42/100 Iteration 290| Training loss: 1.2763
## Epoch 43/100 Iteration 300| Training loss: 1.1874
## Epoch 45/100 Iteration 310| Training loss: 1.1364
## Epoch 46/100 Iteration 320| Training loss: 1.2212
## Epoch 48/100 Iteration 330| Training loss: 1.2551
## Epoch 49/100 Iteration 340| Training loss: 1.0414
## Epoch 50/100 Iteration 350| Training loss: 0.9995
## Epoch 52/100 Iteration 360| Training loss: 1.0172
## Epoch 53/100 Iteration 370| Training loss: 0.9383
## Epoch 55/100 Iteration 380| Training loss: 0.9018
## Epoch 56/100 Iteration 390| Training loss: 0.9925
## Epoch 58/100 Iteration 400| Training loss: 1.0598
## Epoch 59/100 Iteration 410| Training loss: 0.8589
## Epoch 60/100 Iteration 420| Training loss: 0.8374
## Epoch 62/100 Iteration 430| Training loss: 0.8581
## Epoch 63/100 Iteration 440| Training loss: 0.7954
## Epoch 65/100 Iteration 450| Training loss: 0.7692
## Epoch 66/100 Iteration 460| Training loss: 0.8621
## Epoch 68/100 Iteration 470| Training loss: 0.9406
## Epoch 69/100 Iteration 480| Training loss: 0.7505
## Epoch 70/100 Iteration 490| Training loss: 0.7129
## Epoch 72/100 Iteration 500| Training loss: 0.7339
## Epoch 73/100 Iteration 510| Training loss: 0.6761
## Epoch 75/100 Iteration 520| Training loss: 0.6532
## Epoch 76/100 Iteration 530| Training loss: 0.7386
## Epoch 78/100 Iteration 540| Training loss: 0.8545
## Epoch 79/100 Iteration 550| Training loss: 0.6518
## Epoch 80/100 Iteration 560| Training loss: 0.6267
## Epoch 82/100 Iteration 570| Training loss: 0.6537
## Epoch 83/100 Iteration 580| Training loss: 0.6042
## Epoch 85/100 Iteration 590| Training loss: 0.6044
## Epoch 86/100 Iteration 600| Training loss: 0.6818
## Epoch 88/100 Iteration 610| Training loss: 0.7780
## Epoch 89/100 Iteration 620| Training loss: 0.5824
## Epoch 90/100 Iteration 630| Training loss: 0.5706
## Epoch 92/100 Iteration 640| Training loss: 0.5934
## Epoch 93/100 Iteration 650| Training loss: 0.5440
## Epoch 95/100 Iteration 660| Training loss: 0.5468
## Epoch 96/100 Iteration 670| Training loss: 0.6141
## Epoch 98/100 Iteration 680| Training loss: 0.7305
## Epoch 99/100 Iteration 690| Training loss: 0.5369
## Epoch 100/100 Iteration 700| Training loss: 0.5069
np.random.seed(123)
rnn = CharRNN(len(chars), sampling=True)
## << lstm_outputs >> Tensor("rnn/transpose_1:0", shape=(1, 1, 128), dtype=float32)
## Tensor("probabilities:0", shape=(1, 37), dtype=float32)
print(rnn.sample(ckpt_dir='./model-100/',
output_length=500))
## The dl nuad holding hold continue
## lands down openrowt io opon gutht kack opending and caught in open guard hold continues aud laugh oin ooen toands and hold guard face hold ngissean hol in opet antopontno iug holding side control hold continees, sinds L downacrol towhol int tand tin gpinnes L aulet hoper and onding tnuig hpleing spens hold ing toint gut linu popen bodyy hold
## caught in upe ard hold holding sid lowntrros to foce guard facd holding R are hol in to facentning spepen gugt ing tuehicgut i
## run for 200 epochs
batch_size = 64
num_steps = 100
rnn = CharRNN(num_classes=len(chars), batch_size=batch_size)
## << lstm_outputs >> Tensor("rnn/transpose_1:0", shape=(64, 100, 128), dtype=float32)
## Tensor("probabilities:0", shape=(6400, 37), dtype=float32)
rnn.train(train_x, train_y,
num_epochs=200,
ckpt_dir='./model-200/')
## Epoch 2/200 Iteration 10| Training loss: 3.2474
## Epoch 3/200 Iteration 20| Training loss: 3.0692
## Epoch 5/200 Iteration 30| Training loss: 3.0122
## Epoch 6/200 Iteration 40| Training loss: 2.9843
## Epoch 8/200 Iteration 50| Training loss: 2.9860
## Epoch 9/200 Iteration 60| Training loss: 2.8989
## Epoch 10/200 Iteration 70| Training loss: 2.8564
## Epoch 12/200 Iteration 80| Training loss: 2.8073
## Epoch 13/200 Iteration 90| Training loss: 2.7580
## Epoch 15/200 Iteration 100| Training loss: 2.6561
## Epoch 16/200 Iteration 110| Training loss: 2.6021
## Epoch 18/200 Iteration 120| Training loss: 2.5559
## Epoch 19/200 Iteration 130| Training loss: 2.3626
## Epoch 20/200 Iteration 140| Training loss: 2.2792
## Epoch 22/200 Iteration 150| Training loss: 2.1858
## Epoch 23/200 Iteration 160| Training loss: 2.0874
## Epoch 25/200 Iteration 170| Training loss: 1.9766
## Epoch 26/200 Iteration 180| Training loss: 1.9686
## Epoch 28/200 Iteration 190| Training loss: 1.9608
## Epoch 29/200 Iteration 200| Training loss: 1.7501
## Epoch 30/200 Iteration 210| Training loss: 1.6755
## Epoch 32/200 Iteration 220| Training loss: 1.6164
## Epoch 33/200 Iteration 230| Training loss: 1.5325
## Epoch 35/200 Iteration 240| Training loss: 1.4786
## Epoch 36/200 Iteration 250| Training loss: 1.5068
## Epoch 38/200 Iteration 260| Training loss: 1.5314
## Epoch 39/200 Iteration 270| Training loss: 1.3218
## Epoch 40/200 Iteration 280| Training loss: 1.2507
## Epoch 42/200 Iteration 290| Training loss: 1.2633
## Epoch 43/200 Iteration 300| Training loss: 1.1749
## Epoch 45/200 Iteration 310| Training loss: 1.1169
## Epoch 46/200 Iteration 320| Training loss: 1.2069
## Epoch 48/200 Iteration 330| Training loss: 1.2442
## Epoch 49/200 Iteration 340| Training loss: 1.0370
## Epoch 50/200 Iteration 350| Training loss: 0.9939
## Epoch 52/200 Iteration 360| Training loss: 1.0134
## Epoch 53/200 Iteration 370| Training loss: 0.9317
## Epoch 55/200 Iteration 380| Training loss: 0.8910
## Epoch 56/200 Iteration 390| Training loss: 0.9832
## Epoch 58/200 Iteration 400| Training loss: 1.0558
## Epoch 59/200 Iteration 410| Training loss: 0.8724
## Epoch 60/200 Iteration 420| Training loss: 0.8275
## Epoch 62/200 Iteration 430| Training loss: 0.8349
## Epoch 63/200 Iteration 440| Training loss: 0.7720
## Epoch 65/200 Iteration 450| Training loss: 0.7572
## Epoch 66/200 Iteration 460| Training loss: 0.8532
## Epoch 68/200 Iteration 470| Training loss: 0.9326
## Epoch 69/200 Iteration 480| Training loss: 0.7413
## Epoch 70/200 Iteration 490| Training loss: 0.7064
## Epoch 72/200 Iteration 500| Training loss: 0.7335
## Epoch 73/200 Iteration 510| Training loss: 0.6713
## Epoch 75/200 Iteration 520| Training loss: 0.6519
## Epoch 76/200 Iteration 530| Training loss: 0.7357
## Epoch 78/200 Iteration 540| Training loss: 0.8475
## Epoch 79/200 Iteration 550| Training loss: 0.6370
## Epoch 80/200 Iteration 560| Training loss: 0.6173
## Epoch 82/200 Iteration 570| Training loss: 0.6518
## Epoch 83/200 Iteration 580| Training loss: 0.6054
## Epoch 85/200 Iteration 590| Training loss: 0.5929
## Epoch 86/200 Iteration 600| Training loss: 0.6770
## Epoch 88/200 Iteration 610| Training loss: 0.7739
## Epoch 89/200 Iteration 620| Training loss: 0.5882
## Epoch 90/200 Iteration 630| Training loss: 0.5643
## Epoch 92/200 Iteration 640| Training loss: 0.5986
## Epoch 93/200 Iteration 650| Training loss: 0.5393
## Epoch 95/200 Iteration 660| Training loss: 0.5430
## Epoch 96/200 Iteration 670| Training loss: 0.6233
## Epoch 98/200 Iteration 680| Training loss: 0.7182
## Epoch 99/200 Iteration 690| Training loss: 0.5455
## Epoch 100/200 Iteration 700| Training loss: 0.5109
## Epoch 102/200 Iteration 710| Training loss: 0.5416
## Epoch 103/200 Iteration 720| Training loss: 0.5048
## Epoch 105/200 Iteration 730| Training loss: 0.4889
## Epoch 106/200 Iteration 740| Training loss: 0.5701
## Epoch 108/200 Iteration 750| Training loss: 0.6836
## Epoch 109/200 Iteration 760| Training loss: 0.4878
## Epoch 110/200 Iteration 770| Training loss: 0.4685
## Epoch 112/200 Iteration 780| Training loss: 0.4994
## Epoch 113/200 Iteration 790| Training loss: 0.4559
## Epoch 115/200 Iteration 800| Training loss: 0.4541
## Epoch 116/200 Iteration 810| Training loss: 0.5386
## Epoch 118/200 Iteration 820| Training loss: 0.6333
## Epoch 119/200 Iteration 830| Training loss: 0.4573
## Epoch 120/200 Iteration 840| Training loss: 0.4252
## Epoch 122/200 Iteration 850| Training loss: 0.4502
## Epoch 123/200 Iteration 860| Training loss: 0.4193
## Epoch 125/200 Iteration 870| Training loss: 0.4129
## Epoch 126/200 Iteration 880| Training loss: 0.4923
## Epoch 128/200 Iteration 890| Training loss: 0.6039
## Epoch 129/200 Iteration 900| Training loss: 0.4261
## Epoch 130/200 Iteration 910| Training loss: 0.4024
## Epoch 132/200 Iteration 920| Training loss: 0.4210
## Epoch 133/200 Iteration 930| Training loss: 0.3978
## Epoch 135/200 Iteration 940| Training loss: 0.3952
## Epoch 136/200 Iteration 950| Training loss: 0.4679
## Epoch 138/200 Iteration 960| Training loss: 0.5692
## Epoch 139/200 Iteration 970| Training loss: 0.4044
## Epoch 140/200 Iteration 980| Training loss: 0.3841
## Epoch 142/200 Iteration 990| Training loss: 0.4092
## Epoch 143/200 Iteration 1000| Training loss: 0.3663
## Epoch 145/200 Iteration 1010| Training loss: 0.3713
## Epoch 146/200 Iteration 1020| Training loss: 0.4389
## Epoch 148/200 Iteration 1030| Training loss: 0.5536
## Epoch 149/200 Iteration 1040| Training loss: 0.3855
## Epoch 150/200 Iteration 1050| Training loss: 0.3577
## Epoch 152/200 Iteration 1060| Training loss: 0.3849
## Epoch 153/200 Iteration 1070| Training loss: 0.3498
## Epoch 155/200 Iteration 1080| Training loss: 0.3460
## Epoch 156/200 Iteration 1090| Training loss: 0.4165
## Epoch 158/200 Iteration 1100| Training loss: 0.5206
## Epoch 159/200 Iteration 1110| Training loss: 0.3579
## Epoch 160/200 Iteration 1120| Training loss: 0.3279
## Epoch 162/200 Iteration 1130| Training loss: 0.3580
## Epoch 163/200 Iteration 1140| Training loss: 0.3252
## Epoch 165/200 Iteration 1150| Training loss: 0.3344
## Epoch 166/200 Iteration 1160| Training loss: 0.3810
## Epoch 168/200 Iteration 1170| Training loss: 0.4893
## Epoch 169/200 Iteration 1180| Training loss: 0.3441
## Epoch 170/200 Iteration 1190| Training loss: 0.3266
## Epoch 172/200 Iteration 1200| Training loss: 0.3640
## Epoch 173/200 Iteration 1210| Training loss: 0.3197
## Epoch 175/200 Iteration 1220| Training loss: 0.3161
## Epoch 176/200 Iteration 1230| Training loss: 0.3741
## Epoch 178/200 Iteration 1240| Training loss: 0.4798
## Epoch 179/200 Iteration 1250| Training loss: 0.3221
## Epoch 180/200 Iteration 1260| Training loss: 0.2930
## Epoch 182/200 Iteration 1270| Training loss: 0.3095
## Epoch 183/200 Iteration 1280| Training loss: 0.3066
## Epoch 185/200 Iteration 1290| Training loss: 0.3016
## Epoch 186/200 Iteration 1300| Training loss: 0.3429
## Epoch 188/200 Iteration 1310| Training loss: 0.4530
## Epoch 189/200 Iteration 1320| Training loss: 0.3108
## Epoch 190/200 Iteration 1330| Training loss: 0.2893
## Epoch 192/200 Iteration 1340| Training loss: 0.3032
## Epoch 193/200 Iteration 1350| Training loss: 0.2738
## Epoch 195/200 Iteration 1360| Training loss: 0.2816
## Epoch 196/200 Iteration 1370| Training loss: 0.3266
## Epoch 198/200 Iteration 1380| Training loss: 0.4395
## Epoch 199/200 Iteration 1390| Training loss: 0.2906
## Epoch 200/200 Iteration 1400| Training loss: 0.2703
del rnn
np.random.seed(123)
rnn = CharRNN(len(chars), sampling=True)
## << lstm_outputs >> Tensor("rnn/transpose_1:0", shape=(1, 1, 128), dtype=float32)
## Tensor("probabilities:0", shape=(1, 37), dtype=float32)
print(rnn.sample(ckpt_dir='./model-200/',
output_length=500))
## The do face to face
## lands L jab to face, misses R cross to face
## misses R mt kiks ti to body lan
## legs
## misses R cross to face
## misses R mt kick to low L lead leg
## dicsses tok ckocke gint
## heakes boek folin guar hold
## caught in open guard hold
## bacest npee
## gard olee bolein
## lues apding
## aadin ode contro s can hold contingesed copthones and holding R arm to face and caught in open guard hold
## caught in open guard hold, lands R downward cross to head and caught in open guard hold
## lacds dodnwnard L cowsi f ck