An Epiphany Leads to an Expanded USISSL
I had an epiphany. While only 6 states can field a full team (10 field players and 1 goalkeeper), the Laws of the Game allow teams to play with as few as 7 players. Local associations can make this Law more stringent, but I was not able to find any evidence that US Soccer or MLS has done so. This means that I can include states with as few as 6 field players and 1 goalkeeper in the USISSL. Sure, state teams with fewer than 11 players will be at a disadvantage in the USISSL, but that is the same as in real life. So, in the interest of increased competition, the USISSL has (already) undergone expansion.
I modified the code for the (full strength) USISSL that I used to generate the first league table of 6. It is still caveman coding, but I did make an improvement by figuring out how to use one data frame to filter another data frame. I wanted to do this so I could have one chunk of code determine which states had a sufficient number of players and use the resulting data frame to pull players from those states from the master USISSL data frame. The code looks like this:
The key to this is subset(____ %in%_____), which I discovered at Stack Overflow in a response to another user who had the same question I had. This subset function looks vaguely familiar to me from past work with R. To my amazement, it did the trick!
So, my epiphany allowed 8 more states to enter teams in the USISSL this season, yielding a full league table of 14 state teams. As before, some states with enough players still could not enter a team because they have no goalkeepers. These states are Colorado, Illinois, Maryland, and Michigan.
After running the code and just in time for the start of week 5, the USISSL table for week 4 now looks like this:
The 6 full-strength teams occupy the top 6 spots, which isn't surprising. My experience with the dataset tells me that some of these 14 teams are over-achieving given their resources. I will have to add a column to the league table to show how many players each team is fielding. I know how to do this, but it's going to take more time than I have right now. Stay tuned!
I modified the code for the (full strength) USISSL that I used to generate the first league table of 6. It is still caveman coding, but I did make an improvement by figuring out how to use one data frame to filter another data frame. I wanted to do this so I could have one chunk of code determine which states had a sufficient number of players and use the resulting data frame to pull players from those states from the master USISSL data frame. The code looks like this:
> league_field<-subset(league_field_sort, Home.State %in% league_field_4$Home.State)
The key to this is subset(____ %in%_____), which I discovered at Stack Overflow in a response to another user who had the same question I had. This subset function looks vaguely familiar to me from past work with R. To my amazement, it did the trick!
So, my epiphany allowed 8 more states to enter teams in the USISSL this season, yielding a full league table of 14 state teams. As before, some states with enough players still could not enter a team because they have no goalkeepers. These states are Colorado, Illinois, Maryland, and Michigan.
After running the code and just in time for the start of week 5, the USISSL table for week 4 now looks like this:
State Team Total Points 1 California 206 2 Texas 144 3 Ohio 109 4 New Jersey 96 5 New York 85 6 Pennsylvania 77 7 Massachusetts 64 8 North Carolina 62 9 Arizona 57 10 Florida 54 11 Georgia 52 12 Minnesota 31 13 Washington 29 14 Virginia 13
The 6 full-strength teams occupy the top 6 spots, which isn't surprising. My experience with the dataset tells me that some of these 14 teams are over-achieving given their resources. I will have to add a column to the league table to show how many players each team is fielding. I know how to do this, but it's going to take more time than I have right now. Stay tuned!
Comments
Post a Comment