It is common to save data and metadata (data about the data) in two separate files. There are compelling reasons to bring them together. One way to do that is to extend the popular DataFrame classes and save other information with the data.
Here's a notebook with code for an extension of the pd.DataFrame
class that can be pickled.
Here's the R notebook that has the code that extends the R data.frame
class.