Package for handling uncertain data
Project description
uframe: Python uncertain data handling toolkit
What is it?
Introducing uframe: A Flexible and Powerful Framework for Handling Uncertain Data
As of today, uframe is still in development. It is a working prototype and planned features, bugfixes, tests and documentation are partly still missing.
uframe is a comprehensive Python package designed to simplify and expedite research involving uncertain data from various sources. By seamlessly integrating Probability Density Functions (PDFs) into its core functionality, uframe empowers users to manipulate and analyze uncertain data with ease.
Key Features:
- Flexible Data Handling: uframe offers a versatile framework for working with uncertain data, enabling researchers to tackle complex datasets efficiently.
- Probability Density Functions (PDFs): uframe leverages PDFs as the fundamental representation of attribute uncertainty, allowing for a comprehensive characterization of uncertainty within each instance.
- Streamlined Research: With its user-friendly interface and powerful capabilities, uframe facilitates seamless data exploration, analysis, and visualization, promoting accelerated research and insights.
Whether you're dealing with incomplete or imprecise measurements, or simply need a reliable tool to handle uncertainty, uframe provides a robust foundation for your uncertain data analysis needs.
Table of Contents
Main Features
Installation
The source code is available on GitHub: https://github.com/URWI2/uframe
Binary installers of the latest released version are available at the Python Package Index (PyPI) .
pip install uframe
Getting started
To begin working with uncertain data using uframe, follow these steps:
- Import the necessary libraries:
import uframe as uf
import numpy as np
from scipy.stats import gaussian_kde
- Representing uncertain data Uncertain data can be represented by different functions:
- Kernel Density Estimations (eiter scipy or sklearn)
- Scipy probability distributions
uncertain = []
for i in range(10):
uncertain.append(gaussian_kde(np.random.uniform(low = i/2, high = i+1, size= 100)))
data = uf.uframe()
data.append(uncertain)
Once the uframe is created, a number of functions are available to the user.
# samples one instance from the whole data set
data.sample()
# Calculating the mode of each instance using an optimization algorithm
data.mode()
# Determining the expected value of each instance:
data.ev()
uframe_instance subclass
uframe is built upon instances of the class uframe_instance. These classes can also be created by the user and combined to a uframe. The Argument indices is necessary if the order differs of certain and uncertain attributes differs between instances. Indices expects a list of three lists, with the indices of certain, continuous and categorical attributes in different lists.
import uframe as uf
from scipy.stats import gamma, norm
uncertain = [uf.uframe_instance(certain_data = np.array([2.1]), continuous = [norm(0.2,1), gamma(0.3)], indices = [[1],[0,2],[]]),
uf.uframe_instance(continuous = [norm(0.1,1), norm(0.3,0.7), gamma(1)], indices = [[],[1,0,2],[]])]
data = uf.uframe()
data.append(uncertain)
data.sample()
Dependencies
- NumPy - Enables working with large, multi-dimensional arrays, matrices and provides high-level mathematical functions to operate on these arrays
- miceforest - Fast, memory efficient Multiple Imputation by Chained Equations (MICE) with lightgbm, that can be used to create uncertain data
License
Documentation
The official documentation is not yet available.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file uframe-0.0.25.tar.gz.
File metadata
- Download URL: uframe-0.0.25.tar.gz
- Upload date:
- Size: 34.0 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/4.0.2 CPython/3.11.4
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
e817741fdf0175001326591063b2ea424f9c06f50155c2b7faa666885f568d87
|
|
| MD5 |
2f53c466a2fb0e31cf19dcb88e29c743
|
|
| BLAKE2b-256 |
f1bd979bd536a742bd1d3a2190ba1597e0a679f4be0fc8d76bde4e162b7bcda8
|
File details
Details for the file uframe-0.0.25-py3-none-any.whl.
File metadata
- Download URL: uframe-0.0.25-py3-none-any.whl
- Upload date:
- Size: 32.5 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/4.0.2 CPython/3.11.4
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
c206fc8ef108488d49e6008fd54baabac1cbb2d2c6183ad2f1271eda5e486c6c
|
|
| MD5 |
c84b3492b3d98dd672186de1797e1315
|
|
| BLAKE2b-256 |
39e975092b75a1e3f3480b9d46987b15062dbcc59702794dd847832c41434ef3
|