Thats a great solution…Im not interested in learning a new slicer right now!
Thats a great solution…Im not interested in learning a new slicer right now!
First off, understanding the different data structure from a high level is mandatory. I would understand the difference between a dataframe, series, and index are. Further, learn how numpy’s ndarrays play a role.
From there, unfortunately, I had to learn by doing…or rather struggling. It was one question at a time to stack overflow, like “how to filter on a column in pandas”. Maybe in the modern era of LLMs, this part might be easier. And eventually, I learned some patterns and internalized the data structures.
You are correct. For some data sources like parquet it includes some metadata that helps with this, but it’s not as robust at databases I dont think. And of course, cvs have no metadata (I guess a header row.)
The actually specification for how to efficiently store tabular data in memory that also permits quick execution of filtering, pivoting, i.e. all the transformations you need…is called apache arrow. It is the backend of polars and is also a non-default backend of pandas. The complexity of the format I’m unfamiliar with.
I learned SQL before pandas. It’s still tabular data, but the mechanisms to mutate/modify/filter the data are different methodologies. It took a long time to get comfy with pandas. It wasnt until I understood that the way you interact with a database table and a dataframe are very different, that I started to finally get a grasp on pandas.
If it works, don’t fix it!
A big feature of polars is only loading applicable data from disk. But during exporatory data analysis (EDA) you often have the whole dataset in memory. In this case, filters wont help much there. Polars has a good page in their docs about all the possible optimizations it is capable of. https://docs.pola.rs/user-guide/lazy/optimizations/
One I see off the top is projection pushdown, which only selects relevant columns for a final transformations. In pandas, if you perform a group by with aggregation, then only look at a few columns, you still perform aggregation across all the data. In polars lazy API, you would define the entire process upfront, and it would know not to aggregate certain columns, for instance.
Imo Rust already has the perfect book. I would make a resource for C developers. Especially since you know C already.
Its a paradigm shift from pandas. In polars, you define a pipeline, or a set of instructions, to perform on a dataframe, and only execute them all at once at the end of your transformation. In other words, its lazy. Pandas is eager, which every part of the transformation happens sequentially and in isolation. Polars also has an eager API, but you likely want to use the lazy API in a production script.
Because its lazy, Polars performs query optimization, like a database does with a SQL query. At the end of the day, if you’re using polars for data engineering or in a pipeline, it’ll likely work much faster and more memory efficient. Polars also executes operations in parallel, as well.
How do you use Godot for data science?
I lean on nixos modules first, but half the time it either doesnt exist or its too complicated at first glance. So I will manually create an oci-container configuration by referencing a docker compose on the projects site. For simple compose files this is easy. Sometimes its not easy, and I dont end up deploying it.
I’ve been wanting to find or build a method that lets me drop a compose alongside ny config and have nix load the yaml and build the oci-container configuration for me. That would be nice since Im familiar with compose syntax and it’s usually easier to write imo.
~/repo for code I write and ~/src for code I didnt.
I used Zola for a while, but at the end of the day there wasnt enough themes available that fit what I was looking for. I ended up messing with the templating engine to get what I needed.
I suggest OP choose Hugo over Zola, in the hopes that they find a theme that suits them best and for the most part prevents them from having to touch templating to begin with.
Thats a wonderful article. Thank you for sharing
Where’s the tailscale fork? Thats my current battery sink
Paperlessngx will store pdfs and index their contents for searching. It’s not necessarily meant for books but I think it would work.
I used an ai painting pkugin before…never considered others! I’ll take a look.
I love use tools like mermaid or plantuml. But Ive always faught with formatting (or gave up) instead of editing after the fact. Great idea?
In the same vein, I use draw.io to make architecture diagrams and flow charts.
I forgot about Asesprite! Thats a great tool.
Aseprite was originally licensed under GPL but later made propretary. The fork of the last GPL version is called Libresprite but it doesnt have much activity, I dont think.
I’ve been meaning to get into some image generation type things too. The best self hosted tool I know of is InvokeAI. I’m sure there could be a whole other post (or other community) about image generation tools.
Flakes are just a mechanism of pinning dependencies to fixed versions. When you run a flake it doesnt matter if you’re on 24.05, 24.11, or unstable, it’ll produce the exact same output.