https://www.jerad.xyz/notes/eda-structuring-with-python/