Used the CSV files in the TBA github repo and created a quick python notebook to parse the data.
I think it would be cool to add this data to the insights of the blue alliance - anyone?
Here is what I got, although someone should check my outputs, I only printed the top 5 values in the list, there may be teams that tied the last value but wasn’t printed, feel free to make it do so
Most Awards of All Time
Most Chairman's Awards
frc503 18
frc27 13
frc1540 12
frc1311 11
frc33 11
Most Winning Banners
frc254 42
frc67 36
frc1114 35
frc2056 31
frc469 30
Most EI Awards
frc141 13
frc75 12
frc1241 10
frc1305 10
frc27 10
Most WF and WFF Awards
frc525 5
frc987 5
frc16 4
frc1511 4
frc1574 4
frc932 4
Most Controls Award
frc67 10
frc2168 9
frc987 9
frc494 9
frc624 8
Most Creativity Award
frc190 7
frc25 7
frc1388 5
frc910 5
frc868 5
Most Entrepreneurship Award
frc103 14
frc1676 12
frc687 11
frc839 11
frc245 10
Most EE Award
frc2056 10
frc192 10
frc118 10
frc179 7
frc469 7
Most Finalist Award
frc27 23
frc67 18
frc217 14
frc33 14
frc16 13
Most GP Award
frc93 12
frc599 11
frc4063 9
frc1250 8
frc365 8
Most Image Award
frc1024 12
frc1711 10
frc1359 10
frc365 10
frc1262 9
Most Industrial Award
frc1114 15
frc330 12
frc33 11
frc67 11
frc148 9
Most Safety Award
frc337 20
frc1622 18
frc1319 18
frc48 17
frc2062 15
Most Quality Award
frc27 12
frc254 12
frc148 11
frc67 10
frc2056 9
Most Spirit Award
frc217 11
frc1266 11
frc1189 10
frc2771 9
frc203 8
Most Awards in 2017
Most Chairmans
frc708 2
frc2614 2
frc272 2
frc1311 2
frc66 2
Most Winning Banners
frc2767 5
frc4613 4
frc254 4
frc1678 4
frc2168 4
Most EI and Rookie Inspiration
frc2096 3
frc1023 3
frc6631 2
frc6498 2
frc6300 2
Most WF and WFF
frc2607 1
frc5449 1
frc3255 1
frc175 1
frc2383 1
Most Controls
frc2054 4
frc2168 3
frc4026 3
frc225 2
frc610 2
Most Creativity
frc753 3
frc3637 2
frc435 2
frc2175 2
frc4541 2
Most Entrepreneurship
frc2974 3
frc1305 2
frc2521 2
frc772 2
frc422 2
Most EE
frc2451 4
frc4946 4
frc192 3
frc469 2
frc2471 2
Most Finalist
frc4188 3
frc503 3
frc27 3
frc148 3
frc365 3
Most GP
frc5407 2
frc4055 2
frc888 2
frc2363 2
frc4646 2
Most Imagery
frc1075 5
frc3966 2
frc5310 2
frc4325 2
frc1481 2
Most Industrial
frc33 3
frc5066 2
frc2791 2
frc1796 2
frc5803 2
Most Safety
frc5401 3
frc5582 3
frc4063 3
frc3284 3
frc3546 2
Most Quality
frc230 3
frc910 2
frc67 2
frc587 2
frc303 2
Most Spirit
frc5484 3
frc5603 3
frc2682 3
frc6098 2
frc4151 2
Python Code used to Generate Data, please feel free to make it better. I wrote this in 20 minutes, by no way is it optimized it is in python 2.7
# Download Blue Alliance Repo from github
# Search blue alliance repo recurvsively for all *award files and combine to single csv file
import glob, os, shutil
os.chdir("C:/Users/notincontrol/Downloads/the-blue-alliance-data-master/")
with open('output_file.csv','wb') as wfd:
for root, dirnames, filenames in os.walk('events'):
for filename in fnmatch.filter(filenames, '*awards.csv'):
with open(os.path.join(root, filename),'rb') as fd:
shutil.copyfileobj(fd, wfd)
print "output file created"
#import awards list into python
import pandas as pd
df = pd.read_csv('output_file.csv', index_col=False, header=0, names = "Event", "Award", "Team", "Name"])
df
#List different awards in data set
print df.Award.unique()
#Chairmains
chairman = df(df"Award"].str.contains("chairman", case=False) & ~df"Award"].str.contains("final", case=False) & ~df"Award"].str.contains("honorable", case=False))]
print "Most Chairman's Awards"
chairman.Team.value_counts().nlargest(5)
#Event Wins = Winner and not Chairmans
banners = df(df"Award"].str.contains("winner", case=False) & ~df"Award"].str.contains("chairman", case=False)) | df"Award"].str.contains("division champion", case=False)]
print "Most Winning Banners"
banners.Team.value_counts().nlargest(5)
#Engineering Inspiration
#EI & Rookie Inspiration
ei = df(df"Award"].str.contains("inspiration", case=False))]
print "Most EI Awards"
ei.Team.value_counts().nlargest(5)
#WF & WFF
wf = df(df"Award"].str.contains("woodie", case=False))]
print "Most WF and WFF Awards"
wf.Team.value_counts().nlargest(5)
#Controls
controls = df[df["Award"].str.contains("control", case=False)]
print "Most Controls Award"
controls.Team.value_counts().nlargest(5)
#Creativity
creativity = df(df"Award"].str.contains("creativity", case=False) & ~df"Award"].str.contains("auto", case=False))]
print "Most Creativity Award"
creativity.Team.value_counts().nlargest(5)
#Entrepreneurship
entrepreneurship = df[df["Award"].str.contains("entrepre", case=False)]
print "Most Entrepreneurship Award"
entrepreneurship.Team.value_counts().nlargest(5)
#Excellence in Engineering
excellence = df[df["Award"].str.contains("excellence", case=False)]
print "Most EE Award"
excellence.Team.value_counts().nlargest(5)
#Finalist
finalist = df(df"Award"].str.contains("finalist", case=False) & ~df"Award"].str.contains("woodie", case=False) & ~df"Award"].str.contains("chairman", case=False) & ~df"Award"].str.contains("dean", case=False))]
print "Most Finalist Award"
finalist.Team.value_counts().nlargest(5)
#GP
gp = df(df"Award"].str.contains("gp", case=False) | df"Award"].str.contains("gracious", case=False))]
print "Most GP Award"
gp.Team.value_counts().nlargest(5)
#Imagery
image = df(df"Award"].str.contains("image", case=False))]
print "Most Image Award"
image.Team.value_counts().nlargest(5)
#Industrial Design
industrial = df(df"Award"].str.contains("industrial", case=False) & ~df"Award"].str.contains("safety", case=False))]
print "Most Industrial Award"
industrial.Team.value_counts().nlargest(5)
#Safety
safety = df(df"Award"].str.contains("safety", case=False))]
print "Most Industrial Award"
safety.Team.value_counts().nlargest(5)
#Quality
quality = df(df"Award"].str.contains("quality", case=False))]
print "Most Quality Award"
quality.Team.value_counts().nlargest(5)
#Spirit
spirit = df(df"Award"].str.contains("spirit", case=False))]
print "Most Spirit Award"
spirit.Team.value_counts().nlargest(5)
#2017 Only
year = "2017"
chairman_yr = chairman[chairman["Event"].str.contains(year)]
banners_yr = banners[banners["Event"].str.contains(year)]
ei_yr = ei[ei["Event"].str.contains(year)]
wf_yr = wf[wf["Event"].str.contains(year)]
controls_yr = controls[controls["Event"].str.contains(year)]
creativity_yr = creativity[creativity["Event"].str.contains(year)]
entrepreneurship_yr = entrepreneurship[entrepreneurship["Event"].str.contains(year)]
excellence_yr = excellence[excellence["Event"].str.contains(year)]
finalist_yr = finalist[finalist["Event"].str.contains(year)]
gp_yr = gp[gp["Event"].str.contains(year)]
image_yr = image[image["Event"].str.contains(year)]
industrial_yr = industrial[industrial["Event"].str.contains(year)]
safety_yr = safety[safety["Event"].str.contains(year)]
quality_yr = quality[quality["Event"].str.contains(year)]
spirit_yr = spirit[spirit["Event"].str.contains(year)]
print 'Most Chairmans'
print chairman_yr.Team.value_counts().nlargest(5)
print 'Most Winning Banners'
print banners_yr.Team.value_counts().nlargest(5)
print 'Most EI and Rookie Inspiration'
print ei_yr.Team.value_counts().nlargest(5)
print 'Most WF and WFF'
print wf_yr.Team.value_counts().nlargest(5)
print 'Most Controls'
print controls_yr.Team.value_counts().nlargest(5)
print 'Most Creativity'
print creativity_yr.Team.value_counts().nlargest(5)
print 'Most Entrepreneurship'
print entrepreneurship_yr.Team.value_counts().nlargest(5)
print 'Most EE'
print excellence_yr.Team.value_counts().nlargest(5)
print 'Most Finalist'
print finalist_yr.Team.value_counts().nlargest(5)
print 'Most GP'
print gp_yr.Team.value_counts().nlargest(5)
print 'Most Imagery'
print image_yr.Team.value_counts().nlargest(5)
print 'Most Industrial'
print industrial_yr.Team.value_counts().nlargest(5)
print 'Most Safety'
print safety_yr.Team.value_counts().nlargest(5)
print 'Most Quality'
print quality_yr.Team.value_counts().nlargest(5)
print 'Most Spirit'
print spirit_yr.Team.value_counts().nlargest(5)