How to create an array of dataframes in Python
I suggest that you create a dictionary to hold the DataFrames
. That way you will be able to index them with a month-day
key:
import datetime as dt import numpy as npimport pandas as pddates_list = [dt.datetime(2015,11,i+1) for i in range(3)]month_day_list = [d.strftime("%m%d") for d in dates_list]dataframe_collection = {} for month_day in month_day_list: new_data = np.random.rand(3,3) dataframe_collection[month_day] = pd.DataFrame(new_data, columns=["one", "two", "three"])for key in dataframe_collection.keys(): print("\n" +"="*40) print(key) print("-"*40) print(dataframe_collection[key])
The code above prints out the following result:
========================================1102---------------------------------------- one two three0 0.896120 0.742575 0.3940261 0.414110 0.511570 0.2682682 0.132031 0.142552 0.074510========================================1103---------------------------------------- one two three0 0.558303 0.259172 0.3732401 0.726139 0.283530 0.3782842 0.776430 0.243089 0.283144========================================1101---------------------------------------- one two three0 0.849145 0.198028 0.0673421 0.620820 0.115759 0.8094202 0.997878 0.884883 0.104158