xloil
dbd
xloil | dbd | |
---|---|---|
5 | 4 | |
117 | 55 | |
- | - | |
8.8 | 0.0 | |
about 1 month ago | about 2 years ago | |
C++ | Python | |
GNU General Public License v3.0 or later | BSD 3-clause "New" or "Revised" License |
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
xloil
-
XlOil: The fastest library for writing Excel functions in Python
I recently discovered xlOil after many years with xlWings and periodically checking for other options out there. xlOil is an order of magnitude faster than xlWings or VBA (benchmarks taken from here: https://github.com/lukedays/excel-benchmarks) while still being easy to use and the most feature complete!
With xlOil, you can easily write functions in Python and have them appear in Excel as worksheet functions and macros.
What sets xlOil apart is its ability to have very low overheads when calling your own worksheet functions. This means you can write complex functions without sacrificing performance. xlOil supports different languages via plugins, including C++, Python, and SQL.
With xlOil, you'll have access to a range of features that make writing Excel functions in Python a breeze. For instance, the Python syntax for declaring Excel functions is incredibly concise, and you can use optional type checking of function parameters and support for keyword arguments. xlOil also offers tight integration with numpy, so you can enjoy very low overheads for array functions.
Another advantage of xlOil is its support for a range of data structures, including tuples, lists, dictionarys, and pandas dataframes. Additionally, you can use xlOil to write async functions, RTD functions, and on-the-fly RTD server creation. xlOil also supports macro-type functions that write to ranges on the sheet, and you can access the Excel Application object, hook Excel events, and pass any python object back to Excel and then back into any python function.
xlOil even offers simple and quick add-in deployment and two-way connection to Jupyter notebooks, making it easy to run worksheet functions in Jupyter and query variables in the jupyter kernel. On-the-fly creation/destruction of COM addin objects and Ribbon UI is also supported.
Check it out on Github and star it to encourage the developer to keep supporting this great contribution to the Open Source community!
https://github.com/cunnane/xloil
- GitHub - cunnane/xloil: xlOil provides framework for interacting with Excel in different programming languages (python & C++ currently)
-
XlOil: Easy Excel Integration for Python and SQL
Some benchmarks here comparing to xlwings: https://github.com/cunnane/xloil/discussions/6 (although these are slightly out of date and xloil is now faster)
-
Running python from excel
xlOil https://github.com/cunnane/xloil
dbd
-
Easy loading Kaggle dataset to a database
I've created two examples of how to use the dbd tool to load Kaggle dataset data files (csv, json, xls, parquet) to your Postgres, MySQL, or SQLite database.Basically, you don't have to create any tables, nor run any SQL INSERT or COPY statements. Everything is automated. You just reference the datasets and files with a URL and execute a 'dbd run' command.The examples are here. Perhaps you find it useful. Let me know, what you think!
-
Easy loading dataset files to a database
I've created two examples of how to use the [dbd](https://github.com/zsvoboda/dbd) tool to load Kaggle dataset data files (csv, json, xls, parquet) to your Postgres, MySQL, or SQLite database.
-
dbd: create your database from data files on your directory
I work on the new open-sourced tool called dbd that enables you to load data from your local data files to your database and transform it using insert-from-select statements. The tool supports templating (Jinja2). It works with Postgres, MySQL, SQLite, Snowflake, Redshift, and BigQuery.
-
New opensource ELT tool
I was looking for some declarative ELT tool for creating my analytics solutions, and DBT was the closest I've found. I liked its concept, but I came across quite a few limitations when I wanted to use it. I couldn't specify and create basic things like data types, indexes, primary/foreign keys, etc. In the end, I decided to implement my own - more straightforward and more flexible. I've published the result - dbd on GitHub. Perhaps, you can find it helpful. Your feedback is greatly appreciated!