Skip to main content

No project description provided

Project description

Data transformation library

This project builds python library, containing data transformation functions. Library supposed to be used by data-scientists.

Project Description

The Python data transformation package is designed to assist with common data transformation and manipulation tasks. Described data transformation package provides three essential functions:

  • Transpose Data: "transpose2d" function allows user to swap rows and columns in a matrix (list of lists of float values). It’s particularly useful when you need to reorganize data for further analysis. For example:
You have a matrix, which looks like:
    [[1.0, 2.0, 3.8],
     [4.0, 5.5, 6.4],
     [1.0, 2.0, 3.8], 
     [4.0, 5.5, 6.4]])
After applying "transpose2d" result matrix would look like:
    [[1.0, 4.0, 1.0, 4.0], 
     [2.0, 5.5, 2.0, 5.5], 
     [3.8, 6.4, 3.8, 6.4]]  
  • Sliding Window: "window1d" function creates a sliding window over a sequence of data (NumPy array). Given a window size, shift and stride, it iterates through the data, providing overlapping subsets. For example:
You have an array: np.array([1, 2, 3, 4, 5, 6, 7, 8, 9]
And you would like to get sliding windows of 4 elements each, containing every second element from the sequence
and shifting by 1 position each time.
After applying "window1d" function, received sliding windows would looke like:
    [[2 4 6 8]
        [3 5 7 9]]
  • Convolutional Matrix: "convolution2d" function performs matrix convolution. Convolution is commonly used in image processing, signal analysis, and neural networks. In this package, it will be applied on 2D matrix (NumPy array) with possibility to define stride. Using this function, custom kernels could be applied on data:
You have a 2D matrix: 
        np.array([[1, 2, 3, 4], [5, 6, 7, 8], [9, 10, 11, 12], [13, 14, 15, 16]])
You have a kernel matrix:
        np.array([[10, 20], [40, 50]])
And you decide that stride will be 2.
After applying "convolution2d" function, received convolutional matrix (sum of kernel multiplied by parts of the
input matrix) would look like:
    [[ 550.  790.]
     [1510. 1750.]]

How to Install and Run the Project

Installation instruction assumes that package user is using Windows OS and poetry, since it is a prerequisite in the project we currently work.

- 1. *Install Poetry*: Open PowerShell and execute the following command:
curl -sSL https://install.python-poetry.org | python3 -
- 2. *Create a new project using poetry*: In your IDE tool open the terminal and run command to create new project:
poetry new my_project_name
- 3. *Install data-transformation library*: Using the terminal, enter created project and run this command to install

data-transformation package:

poetry add data-transformation-marta-miseke1

How to Run Tests

Project contains 5 unit tests. To make sure that all features work correctly, tests could be run using command:

poetry run pytest

How to Use the Package

To your created project, import DataTransformation class. For example:

from data_transformation_marta_miseke1 import DataTransformation

Examples of usage of library functions:

    data = DataTransformation()
    transposed = data.transpose2d([[1.0, 2.0, 3.8], [4.0, 5.5, 6.4],
                                   [1.0, 2.0, 3.8], [4.0, 5.5, 6.4]])
    print('transposed matrix', transposed)
    window = data.window1d(np.array([1, 2, 3, 4, 5, 6, 7, 8, 9]), 4, 1, 2)
    print('Sliding windows:',window)
    convolution = data.convolution2d(np.array(
        [[1, 2, 3, 4], [5, 6, 7, 8], [9, 10, 11, 12], [13, 14, 15, 16]]),
        np.array([[10, 20], [40, 50]]), 2)
    print('convolutional matrix:',convolution)

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

data_transformation_marta_miseke1-0.1.1a3.tar.gz (4.2 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

File details

Details for the file data_transformation_marta_miseke1-0.1.1a3.tar.gz.

File metadata

File hashes

Hashes for data_transformation_marta_miseke1-0.1.1a3.tar.gz
Algorithm Hash digest
SHA256 24cd3409dbf8268ae037abf793fb5bc764e8defaff6133f925b4bde1f9cef43f
MD5 98e671abdb3c94f8e0a2e4c6f9fca710
BLAKE2b-256 a6f977033aec0e54fafdbff523d5fef290d0afd1de37ec93826d6e22e0861b4b

See more details on using hashes here.

File details

Details for the file data_transformation_marta_miseke1-0.1.1a3-py3-none-any.whl.

File metadata

File hashes

Hashes for data_transformation_marta_miseke1-0.1.1a3-py3-none-any.whl
Algorithm Hash digest
SHA256 3146187d0c2e8492606677cac3e3ac788f3f11bb1dc94aa73444c83d64e6b57f
MD5 315ccfc6cac123da9a14d7fa51ae3327
BLAKE2b-256 1bd458c0009d55423714768dfb41423d582f04c245cc6bc256e09f66ef712f47

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page