I have a list of datasets that I want to use in a for loop to easily do the same operations on the whole list. I can't figure out how to stitch it together though.
I'm trying to do something like this:
datasets = ['baseline', 'chan_0_light', 'chan_1_light', 'chan_2_light', 'chan_3_light',
'chan_0_pain', 'chan_1_pain', 'chan_2_pain', 'chan_3_pain', 'drought']
for i in datasets:
df_ + datasets[i] = pd.read_csv('datasets\\' + str(datasets[i]) + '.csv')
df_ + datasets[i] + ['Datetime'] = pd.to_datetime(df_ + datasets[i] + ['Datetime'], format='%Y-%m-%d %H:%M:%S.%f')
df_ + datasets[i] = df_ + datasets[i] + .set_index("Datetime")
instead of writing it all out like this:
df_baseline = pd.read_csv('datasets\\baseline.csv')
df_baseline['Datetime'] = pd.to_datetime(df_baseline['Datetime'], format='%Y-%m-%d %H:%M:%S.%f')
df_baseline = df_baseline.set_index("Datetime")
df_chan_0_light = pd.read_csv('datasets\\chan_0_light.csv')
df_chan_0_light['Datetime'] = pd.to_datetime(df_chan_0_light['Datetime'], format='%Y-%m-%d %H:%M:%S.%f')
df_chan_0_light = df_chan_0_light.set_index("Datetime")
df_chan_1_light = pd.read_csv('datasets\\chan_1_light.csv')
df_chan_1_light['Datetime'] = pd.to_datetime(df_chan_1_light['Datetime'], format='%Y-%m-%d %H:%M:%S.%f')
df_chan_1_light = df_chan_1_light.set_index("Datetime")
# and so on
I finally found a way that works. For others reference:
datasets = glob.glob("datasets" + "/*.csv")
dfs_dict = {}
for filename in datasets:
df = pd.read_csv(filename)
df['Datetime'] = pd.to_datetime(df['Datetime'], format='%Y-%m-%d %H:%M:%S.%f')
df = df.set_index("Datetime")
dfs_dict["df_" + str(filename)[9:-4]] = df