This release is a pre-release and may not be stable for production use.
Cronus Eater: A simple tool to get time series from spreadsheets
Extract and normalize time series from any spreadsheet with differents patterns.
Where is the data I want?
- There's just one place to get the data I want, but ... it's mess! I need to spend some time to normalize this times series.
import pandas as pd
raw_dataframe = pd.read_excel('historical_series_3Q22.xlsx', sheet_name='random_sheet')
raw_dataframe.head()
| 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | |
|---|---|---|---|---|---|---|---|---|---|---|
| 0 | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN |
| 1 | NaN | Holdings Ltd. | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN |
| 2 | NaN | NaN | NaN | NaN | 3Q22 | 2Q22 | NaN | 1Q22 | 2022 | NaN |
| 3 | NaN | Amounts in thousands of R$ | NaN | NaN | R$ | R$ | NaN | R$ | R$ | NaN |
| 4 | NaN | Cash Flow | NaN | NaN | $500.23 | $302.81 | NaN | $106.12 | $900.00 | NaN |
Let's devours this times series
- No need to worry. You just need to bring the raw dataframe to Cronus Eater and you are ready to start the analysis. This way, you spend more time on what is really important for you.
import cronus_eater
times_series_df = cronus_eater.extract(raw_dataframe)
times_series_df.head()
| Numeric Index | Label Index | Table Order | Time | Value | |
|---|---|---|---|---|---|
| 0 | 4 | Cash Flow | 1 | 3Q22 | 500.23 |
| 1 | 4 | Cash Flow | 1 | 2Q22 | 302.81 |
| 2 | 4 | Cash Flow | 1 | 1Q22 | 106.12 |
| 3 | 4 | Cash Flow | 1 | 2022 | 900.00 |
But If I need to consume a lot of dataframes from a spreedsheet?
- We got you, just use "extract_many"
raw_dataframes = pd.read_excel('historical_series_3Q22.xlsx', sheet_name=None)
times_series_df = cronus_eater.extract_many(raw_dataframes)
times_series_df.head()
| Numeric Index | Label Index | Table Order | Time | Value | Sheet Name | |
|---|---|---|---|---|---|---|
| 0 | 4 | Cash Flow | 1 | 3Q22 | 500.23 | random_sheet |
| 1 | 4 | Cash Flow | 1 | 2Q22 | 302.81 | random_sheet |
| 2 | 7 | ROE | 1 | 1Q22 | 106.12 | random_sheet_2 |
| 3 | 7 | ROE | 1 | 2022 | 900.00 | random_sheet_2 |
Where to get it
The source code is currently hosted on GitHub at: https://github.com/breno-jesus-fernandes/cronus-eater
Binary installers for the latest released version is going to available at the Python Package Index (PyPI).
# Through pip
pip install cronus-eater
# Through poetry
poetry add cronus-eater
License
Contributing to Cronus Eater
All contributions, bug reports, bug fixes, documentation improvements, enhancements, and ideas are welcome. See https://github.com/breno-jesus-fernandes/cronus-eater/tree/main/docs for instructions.
Metadata
Release files for cronus-eater 0.1.0a10
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| cronus_eater-0.1.0a10.tar.gz | 10.2 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| cronus_eater-0.1.0a10-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 21.3 kB
Release files / cronus_eater-0.1.0a10.tar.gz
| Download URL | cronus_eater-0.1.0a10.tar.gz |
|---|---|
| Size | 10.2 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
f81d9a9bd5fef0dcda5840a47fc138baa9647389fa52e82bf8430c849ce2a56e
|
|
BLAKE2b-256 checksum How to use checksums |
cb6dc9bf0776352e1d93bdba4c5ed156b385e1b82d2e9aaa43a41511f6c573ba
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
poetry/1.4.0 CPython/3.10.4 Linux/5.4.0-1104-azure
|
Release files / cronus_eater-0.1.0a10-py3-none-any.whl
| Download URL | cronus_eater-0.1.0a10-py3-none-any.whl |
|---|---|
| Size | 11.1 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
41174d2f5e21182a1971500337524ab6dd2f63188bedb90cd8c9f6a00420bf0b
|
|
BLAKE2b-256 checksum How to use checksums |
3059adbea0acc250ffc3b4e177dcb2e95767ca192c32676d7dc7c547f68552ba
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
poetry/1.4.0 CPython/3.10.4 Linux/5.4.0-1104-azure
|