Data Compression

Project in which we explore different algorithms and compression approaches such as Huffman coding or entropy change. The distribution of the symbols of the compressed files (image, electronic book, etc.) is also analyzed.


1. Symbols Distribution
2. Text Compression
3. File Compression
4. Compression & Entropy


PNG images and plain textbook of different sizes and different languages (English and Spanish).

Python Dependencies

    import io
    import math
    import timeit
    import numpy as np
    import pandas as pd
    from collections import Counter
    from PIL import Image
    from scipy.stats import entropy
    import seaborn as sns
    import matplotlib.pyplot as plt


To Ramses Coraspe for his good ideas and the validation of the compression / decompression processes used in this project.

Contributing and Feedback

Any kind of feedback/criticism would be greatly appreciated (algorithm design, documentation, improvement ideas, spelling mistakes, etc…).



This project is licensed under the terms of the MIT license.