This blog post suggests that it has been supported since 2021 and matches my experience.
This blog post suggests that it has been supported since 2021 and matches my experience.
The link you shared shows how DuckDB can run SQL queries on a pandas dataframe (e.g. `duckdb.query("<SQL query>")`. The SQL query in this case is a string. A dataframe API would allow you to write it completely in Python. An example for this would be polars dataframes (`df.select(pl.col("...").alias("...")).filter(pl.col("...") > x)`).
Dataframe APIs benefit from autocompletion, error handling, syntax highlighting, etc. that the SQL strings wouldn't. Please let me know if I missed something from the blog post you linked!
However it's somewhat weakened by the possibility that some parts of the SQL string are resolved by the surrounding python context.
There may be another benefit: a lot of LLMs are getting good at how do I do X in Duckdb.
Progress is being tracked on Github Discussions[3].
[1]: https://duckdb.org/docs/api/python/spark_api.html