Comments (8)
I don't think you're missing anything. I noticed the same issue in the sample code provided.
Try:
q = nfldb.Query(db)
q.game(season_year=2013, season_type='Regular', week=1)
q.play_player(team='NE')
for d in q.as_drives():
print d
I know there is probably a better way there than q.play_player
, but it seems to work. @BurntSushi can probably explain
What am I missing?
Github markdown FYI: If you add
#```python
and
#```
around your code (minus the pound signs) that you post here, it will make it pretty.
from nfldb.
Dammit. This is a genuine bug. I got overzealous with error checking in the last release. Nice find!
from nfldb.
I'm going to change my answer here - something appears to be wrong. Almost every example gives a q.game(team='NE')
methodology...
from nfldb.
P.S. @ochawkeye Have you see the write up for the nfldb 0.2.0
release? https://github.com/BurntSushi/nfldb/releases/tag/0.2.0 (TL;DR I completely re-wrote nfldb.query
.)
from nfldb.
OK, this is fixed.
@roodhouse You will need to run pip install --upgrade nfldb
and then the examples should work. Sorry about that!
@ochawkeye P.S. Check out the fix. We have regression tests now. :-)
from nfldb.
Thanks guys. Time to test my newly learned skill. If I come back here
then you know what happened..
On Wed, Jul 30, 2014 at 5:46 PM, Andrew Gallant [email protected]
wrote:
OK, this is fixed.
@roodhouse https://github.com/roodhouse You will need to run pip
install --upgrade nfldb and then the examples should work. Sorry about
that!@ochawkeye https://github.com/ochawkeye P.S. Check out the fix. We have
regression tests now. :-)—
Reply to this email directly or view it on GitHub
#34 (comment).
from nfldb.
Out of curiosity, how expensive is a database query as opposed to iterating over the data redundantly?
q = nfldb.Query(db)
q.game(season_year=2013, season_type='Regular', week=1, team='NE')
q.drive(pos_team='NE')
for d in q.as_drives():
print d
q = nfldb.Query(db)
q.game(season_year=2013, season_type='Regular', week=1, team='NE')
q.drive(pos_team='BUF')
for d in q.as_drives():
print d
vs.
q = nfldb.Query(db)
q.game(season_year=2013, season_type='Regular', week=1, team='NE')
for d in q.as_drives():
if d.pos_team == 'NE':
print d
for d in q.as_drives():
if d.pos_team == 'BUF':
print d
Running first sample 100 times:
Execution time for 100 cycles = 2.66303673806
Average per cycle = 0.0266303673806
Running second sample 100 times:
Execution time for 100 cycles = 4.58160582431
Average per cycle = 0.0458160582431
But repeating tests gives drastically varying times. Any thoughts on this?
from nfldb.
@ochawkeye As a general rule of thumb, the more you put into a database query and the less work you do in Python, the faster it will be. I think that is consistent with your tests because you're doing more work in Python in the second example.
I would suggest removing week=1
and doing the test over an entire season to get stabler numbers.
Also, your tests should not have print
in them. That could also be a source of instability between test runs. Maybe do a sum of something instead.
(If you wait, I'll do it when I get home later today.)
from nfldb.
Related Issues (20)
- Any active users here? HOT 36
- nfldb-update: command not found HOT 4
- New Season HOT 2
- pip freeze
- Has the NFL ever complained about this project? HOT 2
- pip error
- Game gsis_id = 2017111911 missing in schedule.json (Ochawkeye issue #298)
- Not able to install in Windows HOT 2
- pip installation error HOT 1
- ConfigParser with-update HOT 1
- GSIS ID 2019090808 (CIN @ SEA) stored incomplete JSON to database, unable to replace HOT 4
- Bulk Upload 2017-2019 nfldb-update HOT 4
- Installed and ran nfldb-update. Data Missing for 2017 and 2018 HOT 2
- Expected Points & Win Probability HOT 1
- KeyError Gsis_id = 2019122202
- NFL Update HOT 1
- Anyone have a .sql export with 2019? HOT 1
- XML feeds removed from NFL website? HOT 4
- NFL db update on Anaconda help HOT 1
- Odoo v14 error HOT 2
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from nfldb.