-
-
Notifications
You must be signed in to change notification settings - Fork 18.4k
Quick Frame Shift Implementation #6404
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Conversation
ok....when you run the tests...lots of failure....pls investigate.... |
I see that the indexer in pandas/core/internal is unused. Removing this argument will mean we can take out |
yep indexer can go |
Taking indexer out clashes with the shift in the SparseBlock. Should the same roll logic work here ? Any idea what are the other shift calls that may need to be changed here? |
So I would take the indexer out of the Block.shift method as you don't need it their. Take the argument out of the SparseBlock.shfit as well, and compute the indexer their (move the _shift_indexer code into that function). |
The indexer is obtained as: The first argument to Is it the same as saying |
just take the guts of |
can you post the results of the vbench? If you can rebase/squash would be great |
Are there any docs on how to setup and run vbench? I couldn't get it running! I tested the old and new using timeit. |
go to |
I put some notes I had written up for statsmodels at https://github.com/pydata/pandas/wiki/Performance-Testing @jreback hopefully everything is accurate. I'll add more later. |
@TomAugspurger awesome just what was needed! |
- document center argument - add note about the result set at right edge by default - clarified freq keyword a little bit
update release and docs
Work on pandas-dev#6175. Changes instances of assert_(a [not] in b) to specialized assert[Not]In(a,b).
…,1,1)), ('date', '<=', datetime(2014,1,1))] were broken - modified Expr.parse_back_compat to check for tuples, in w, and unpack into w, op, value - modified Expr.__init__ to modify the where list/tuple with the parsed result
Work on pandas-dev#6175. Changes instances of assert_([not] isinstance(a,b)) to specialized assert[Not]IsInstance(a, b).
Work on pandas-dev#6175. Change superclass of tests/test_compat, to use tm.TestCase
Finishes pandas-dev#6175, to the extent that everything remaining can be mapped to assertTrue or assertFalse, unless larger refactorings are desired.
TST dont ignore subselection in groupby
TST for selected groupby add resample ohlc and filter
…Indexes with NaNs.
This is an implementation of quick shift logic Added a vbench to reflect quick shift implementation This change is a working version that gives the performance improvement and passes tests. Refine in next steps. Slightly modified and cleaner logic. Removed unused indexer, _shift_indexer Fixed the failing tests for SparseDataFrame
@jreback I couldn't run the test like you said. Perhaps it has to do with the fact that I use a Windows system. Can some one run this? I do have the squashed commit here. |
ok just post the results them of the benchmark before and after the change |
Test code
Results
|
@jreback I am not sure if the squashed set is supposed to have all these commits. Also I notice that after squashing, the shift has the axis in reverse. Not sure what happened here!!!!! |
try
|
ok...here's what you need to do:
where and 2 are your commits from above this takes the commits out and puts them in a new branch push this branch up and do a new PR, closing this one. |
Please refer to #6672 for the new pull request. |
Fix for issue #5609