https://github.com/quati-dev/quati
Dynamic data eng. functions to accelerate development and coding
https://github.com/quati-dev/quati
automation data-engineering python quati
Last synced: 10 months ago
JSON representation
Dynamic data eng. functions to accelerate development and coding
- Host: GitHub
- URL: https://github.com/quati-dev/quati
- Owner: quati-dev
- License: mit
- Created: 2023-02-10T01:02:56.000Z (over 3 years ago)
- Default Branch: main
- Last Pushed: 2025-08-22T20:17:38.000Z (11 months ago)
- Last Synced: 2025-08-22T21:56:25.184Z (11 months ago)
- Topics: automation, data-engineering, python, quati
- Language: Python
- Homepage: https://pypi.org/project/quati/
- Size: 2.39 MB
- Stars: 4
- Watchers: 1
- Forks: 1
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- Contributing: CONTRIBUTING.md
- License: LICENSE
- Citation: CITATION.cff
- Authors: AUTHORS.md
Awesome Lists containing this project
README
quati: A python Quick Actions Toolkit for data engeneering

## What is it?
**quati** provides dynamic functions aimed at data engineering, offering
a wide range of collections to accelerate development. It has a comprehensive and
flexible ecosystem of **tools**, **libraries**, and **community resources**,
allowing data engineers to easily build and deploy applications.
Table of Contents
- [What is it?](#what-is-it)
- [Main Features](#main-features)
- [Where to get it / Install](#where-to-get-it--install)
- [Documentation](#documentation)
- [License](#license)
- [Dependencies](#dependencies)
## Main Features
Here are just a few of the things that pandas does well:
- [`norm_str_num_values()`](https://github.com/quati-dev/quati/blob/main/doc/data.md#norm_str_num_values): Converts string-based number values to their numerical equivalents
- [`norm_rename_columns()`](https://github.com/quati-dev/quati/blob/main/doc/data.md#norm_rename_columns): Renames DataFrame columns based on a normalization function
- [`sync_dtypes_with_table()`](https://github.com/quati-dev/quati/blob/main/doc/google.md#sync_dtypes_with_bigquery_table): Synchronize the data types of a Pandas DataFrame with a BigQuery table's schema
- [`quick_query()`](https://github.com/quati-dev/quati/blob/main/doc/google.md#quick_query): Executes a BigQuery SQL query and returns the result as a Pandas DataFrame
- [`gsheets_get_worksheet()`](https://github.com/quati-dev/quati/blob/main/doc/google.md#gsheets_get_worksheet): Import a worksheet object from gsheets
- [`gsheets_get_worksheet_df()`](https://github.com/quati-dev/quati/blob/main/doc/google.md#gsheets_get_worksheet_df): Import a worksheet object from gsheets as a pandas dataframe
- [`gsheets_dedup()`](https://github.com/quati-dev/quati/blob/main/doc/google.md#gsheets_dedup): Returns dataframe where the column passed as parameter is considered the core set for duplicate data row remover
- [`gsheets_worksheet_next_available_row()`](https://github.com/quati-dev/quati/blob/main/doc/google.md#gsheets_worksheet_next_available_row): Return the ID of the next cell into which data can be entered
- [`gsheets_update()`](https://github.com/quati-dev/quati/blob/main/doc/google.md#gsheets_update): Update a Google Sheets spreadsheet from a reference column
- [`send_email()`](https://github.com/quati-dev/quati/blob/main/doc/messenger.md#send_email): Send an email (Types: error, tip, note, important or warning) with main info about it
- [`delete_file()`](https://github.com/quati-dev/quati/blob/main/doc/system.md#delete_file): Deletes any specified file
- [`rename_file()`](https://github.com/quati-dev/quati/blob/main/doc/system.md#rename_file): Renames a file
- [`search_file()`](https://github.com/quati-dev/quati/blob/main/doc/system.md#search_file): Searches for the existence of a file
- [`progress_bar()`](https://github.com/quati-dev/quati/blob/main/doc/system.md#progress_bar): Waits for the specified number of seconds with an optional progress bar
- [`get_system_info()`](https://github.com/quati-dev/quati/blob/main/doc/system.md#get_system_info): Retrieves system information using the 'uname -a' command
- [`start_browser()`](https://github.com/quati-dev/quati/blob/main/doc/scrapping.md#start_browser): Initialize a Chrome browser using Selenium -->
- [`import_cookies()`](https://github.com/quati-dev/quati/blob/main/doc/scrapping.md#import_cookies): Import cookies to browser
- [`check_element()`](https://github.com/quati-dev/quati/blob/main/doc/scrapping.md#check_element): Function to check if an element exists on a web page based on the provided XPath
- [`esc_or_click()`](https://github.com/quati-dev/quati/blob/main/doc/scrapping.md#esc_or_click): Function to either press the ESC key or click on an element on a web page
## Where to get it / Install
The source code is currently hosted on GitHub at: https://github.com/quati-dev/quati
> [!WARNING]
> It's essential to use [**Python 3.10** 🡽](https://www.python.org/downloads/release/python-310/) version
- [PyPI 🡽](https://pypi.org/project/quati/)
```sh
# PyPI
pip install quati
```
- GitHub
```sh
# or GitHub
pip install git+https://github.com/quati-dev/quati.git
```
## Documentation
- [Documentation 🡽](https://github.com/quati-dev/quati/blob/main/DOCUMENTATION.md).
## License
- [MIT 🡽](https://github.com/quati-dev/quati/blob/main/LICENSE)
## Dependencies
- [NumPy 🡽](https://numpy.org/) | [Pandas 🡽](https://pandas.pydata.org/) | [Selenium 🡽](https://www.selenium.dev/) | [gspread 🡽](https://docs.gspread.org/)
See the [full installation instructions](https://github.com/quati-dev/quati/blob/main/INSTALLATION.md) for minimum supported versions of required, recommended and optional dependencies.
[⇧ Go to Top](#table-of-contents)