Как циклом создавать новый df1, df2....dfn из каждой колонки и записывать новые df на разные листы эксель файла

Всем привет. Пробую не "в руку" создавать df1 и т д. для каждого поля в исходном df

пока получилось только:

for i in df:
    df1 = df.loc[:, df.columns[:1]]

Подскажите, пожалуйста, как мне в руку каждый раз не менять df.columns[:1] на плюс один для того чтобы создавать новый df. И при этом ещё каждый из них сохранить в один эксель файл но на разные листы.

исходный df

Вода Хлеб Молоко Греча
Влажность -0.163172 0.0997964 0.078919 -0.038507
Температура -0.08938 -0.0729 0.070917 -0.004910
Давление 1 -0.163172 0.0997964 0.078919 -0.038507

новый df1 это поле влажность, температура, давление 1 + поле "Вода", df2 это поле влажность, температура, давление 1 + поле "Хлеб"


Ответы (1 шт):

Автор решения: CrazyElf

Не совсем понятно, зачем так всё сложно, но вот, например, собираем колонки в отдельные значения словаря, ключ - номер колонки:

df_dict = {}
for i, col in enumerate(df):
    df_dict[i] = df.loc[:,col]

Можно, кстати, и без названий колонок тоже самое сделать, только по их номерам:

df_dict = {}
for i in range(df.shape[1]):
    df_dict[i] = df.iloc[:,i]
→ Ссылка