Skip to main content

IE Pandas


This is Team C's final project in Advanced Python.

A simple implementation of dataframe functionality

The library is available in Pypi

Installing


The easiest way to install ie_pandas is through pip

pip install ie_pandas

To use it in your project, you must first import the library

from ie_pandas import Dataframe

You can create a frame by the following 4 methods:

  • A list of lists
  • A numpy array of lists
  • A dictionary of lists with keys being column names and values being the values for that column
  • A dictionary of numpy arrays (same as with lists)
dictionary = {'c0': [1, 3, 5], 'c1': [7, 6, 2], 'c2': [2, 4, 7], 'c3': [5, 3, 9]}
df = DataFrame(dictionary)

Functionality

  • Create dataframes from list of lists, numpy arrays, dictionaries of lists and numpy arrays
dictionary = {'c0': [1, 3, 5], 'c1': [7, 6, 2], 'c2': [2, 4, 7], 'c3': [5, 3, 9]}
df = DataFrame(dictionary)

# You may optionally pass along two parameters, cols and index
# cols determines the column names (if blank they will be numerical strings)
# index determines the row names (if blank they will be numbers)
df = DataFrame(dictionary, cols = ["col0", "col1", "col2", "col3"], index = ["row1", "row2", "row3"])
  • Access columns by name
df['column_1']
  • Access rows by position or by row name
df.get_index(1)
# or
df.get_index('row_1')
  • Access data like a numpy array by name
df[0:2, 1:3]
  • Modify dataframe
df[0,0] = 3
  • Sum, median, mean, min, max methods (only work for numerical columns)
df.mean()

Since the underlying object of the dataframe is a numpy array, you may perform aditional functionality like

df[:, 1:2].sum()
  • Visualize relationships between 2 entirely numerical columns (only for numerical columns)
df.visualize(df[:, 2], df[:, 3])
# or
df.visualize(df["c1"], df["c2"])

Dependencies

IE_Pandas only requires the following packages:

  • Numpy (>=1.16)
  • Matplotlib (>=3.0.2)

However, for development purposes, the following packages are needed:

  • Pytest (>= 4.2)
  • Pytest-cov (>= 2.6)
  • Black (for PEP8 compliance)

Development


For development purposes, you may download the files directly and install the library locally by placing your terminal in the downloaded folder and doing

pip install --editable .[dev]

Then, to execute the tests you just need to run

pytest --cov

IE_Pandas Coding Style


IE_Pandas complies to PEP8 and uses black for coding standards

Versioning


SemVer is used for versioning.

License


This project is licensed under the MIT License - see the License file for details

Release files for ie-pandas 0.0.2

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Built distribution (wheel)

Table of built distributions (wheels) for ie-pandas 0.0.2
File Interpreter ABI Platform
ie_pandas-0.0.2-py3-none-any.whl Python 3 none any Details

Release files / ie_pandas-0.0.2-py3-none-any.whl

Download URL ie_pandas-0.0.2-py3-none-any.whl
Size 5.1 kB
Tags Python 3
SHA-256 checksum
How to use checksums
04fd47112642ee97797b8865b5e3072c750a53c5b031a5cf0cc6f3f30cc25646
BLAKE2b-256 checksum
How to use checksums
ae17a82afaf286ae7428a26f90e9f8e2debdca2e5fd1920014474eed78d6a0d4
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/1.13.0 pkginfo/1.5.0.1 requests/2.21.0 setuptools/41.0.0 requests-toolbelt/0.9.1 tqdm/4.29.1 CPython/3.7.2

Release history Release notifications | RSS feed

This release

0.0.2 This release

1 release file

0.0.1

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page