I've always found pandas really hard to use or reason about. I eventually get there but I don't like the code. Obviously subjective. I've never used another "data science" language though so I've no experience beyond it.
Modern Pandas (Part 2): Method Chaining
31–40 of 72 posts
Re: Modern Pandas (Part 2): Method Chaining
#32Earlier quoted context omitted.
My python is rusty but IIRC it allows functional stuff (except for expression-only lambdas, boo). From https://docs.python.org/3/howto/functional.html it's got map/filter/currying and plenty more, what's misting in your view?
pattern matching expressions, syntax for partial application and composition, a typing system which can express structural types, a generalised list comprehension
Re: Modern Pandas (Part 2): Method Chaining
#33I've always found pandas really hard to use or reason about. I eventually get there but I don't like the code. Obviously subjective. I've never used another "data science" language though so I've no experience beyond it.
https://github.com/otsaloma/dataiter
Here's a comparison of dplyr vs. Dataiter vs. Pandas, which should give quick overview of the similarieties and differences.
https://dataiter.readthedocs.io/en/latest/_static/comparison...
Re: Modern Pandas (Part 2): Method Chaining
#34Re: Modern Pandas (Part 2): Method Chaining
#35This is a great series of articles but a bit funny to call it modern pandas these days since it’s six years old. Has it been updated?
Perhaps the successor should be contemporary Pandas, or postmodern Pandas. :)
Re: Modern Pandas (Part 2): Method Chaining
#36Pandas is something that I wish I could avoid at any cost but I can't. There is simply no design philosophy. API is as ugly as it gets. I find it greatly unintuitive. It feels like a giant missmash of hacks on top of other hacks. Sometime I wish designers of Numpy or scikit-learn should have developed Pandas.
Re: Modern Pandas (Part 2): Method Chaining
#37Re: Modern Pandas (Part 2): Method Chaining
#38Re: Modern Pandas (Part 2): Method Chaining
#39Quick pdb trick for pipe-ers, you can stick this in the middle: .pipe(lambda df: (df, pdb.set_trace())[0])
Re: Modern Pandas (Part 2): Method Chaining
#40I've always found pandas really hard to use or reason about. I eventually get there but I don't like the code. Obviously subjective. I've never used another "data science" language though so I've no experience beyond it.
Background: I first gained some experience with J, where I first learned to appreciate the advantages of array languages. The main advantage is actually having your own way of thinking about processing multidimensional data. Now, recently, I've gotten into the notation of APL, and it's really even cooler than the ASCII "noise" of J. The symbols make it easier for me to both write and read programs. Admittedly, for more complex operations with data it takes a lot of learning that you usually don't have. But for simple transformation APL is already quite fast usable and convinces beyond the "mainstream".