-
Notifications
You must be signed in to change notification settings - Fork 370
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
Add insert! and pushfirst! #3072
Conversation
In the PR I fall back with |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Have you checked whether the performance impact is indeed small? Sounds likely given the overhead of accessing each column anyway.
Co-authored-by: Milan Bouchet-Valat <nalimilan@club.fr>
Indeed the performance impact is noticeable unfortunately. I will work on it and let you know (all other issues are resolved) |
As usual if we go into details of performance complexity comes:
Which means I ended up with custom implementations of all cases :( (thus the PR is even larger). Here is the benchmark code:
And the results: THIS PR:
and before this PR (
So:
|
Ah too bad. Wouldn't there be a way to share some of the code between the three functions? |
OK - I will share it and let you decide if it is simpler or not. |
@nalimilan . I have refactored code so that:
(the reason why this rollback is incorrect is that |
Co-authored-by: Milan Bouchet-Valat <nalimilan@club.fr>
Thank you! |
Fixes #2936
@nalimilan - this PR + #3071 (small patch) will complete the row-oriented API for DataFrames.jl.
(unfortunately it is large, that is why I made earlier PRs in this sequence separately)