Попытка использовать Python для чтения в нескольких фреймах данных для анализа моей диссертации [дубликат]

Dec 19 2020

Итак, у меня есть несколько участников с 3 испытаниями каждый. Все мои файлы имеют одинаковое соглашение об именах, поэтому я использовал цикл for, чтобы быстро прочитать все файлы. Теперь мне нужно назначить каждый файл его собственному фрейму данных, который легко читается и позволяет мне работать с максимально возможным количеством файлов одновременно.

в настоящее время у меня есть

for p in range(participants):
    for t in range(tests):
       filename = 'P'+str(p+1)+'S'+str(t+1)+'.csv'

Теперь мне нужно назначить файлы фрейму данных, который будет иметь имя df (p + 1) (t + 1), то есть df11, df12, df13, df21, ... df153

Мне нужно будет получить доступ к нескольким фреймам данных одновременно, и я не уверен, как получить все эти фреймы данных эффективным образом.

Я был бы признателен, если бы кто-нибудь мог сказать мне, как этого добиться

Ответы

DerekO Dec 19 2020 at 12:57

Создание переменных переменных - плохая идея в Python . Вместо этого списки и словари выполняют одно и то же, поэтому я бы рекомендовал хранить ваши DataFrames в словаре с имеющейся у вас схемой именования:

df_dict = {}
for p in range(participants):
    for t in range(tests):
        key_name = 'df' + str(p+1) + str(t+1)
        df_dict[key_name] = pd.read_csv('P'+str(p+1)+'S'+str(t+1)+'.csv')

Затем вы можете получить доступ к каждому DataFrame через ключ словаря: df_dict['df11']