Tentando usar Python para ler em vários dataframes para minha análise na minha dissertação [duplicado]

Dec 19 2020

Portanto, tenho vários participantes com 3 tentativas cada. Todos os meus arquivos têm a mesma convenção de nomenclatura, então usei um loop for para ler rapidamente todos os arquivos. Agora preciso atribuir cada arquivo a seu próprio dataframe que seja fácil de ler e me permita trabalhar no máximo possível de uma vez.

atualmente eu tenho

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

Agora preciso atribuir os arquivos a um quadro de dados que teria um nome de df (p + 1) (t + 1) ou seja, df11, df12, df13, df21, ... df153

Precisarei acessar vários quadros de dados ao mesmo tempo e não tenho certeza de como obter todos esses quadros de dados de maneira eficiente.

Eu agradeceria se alguém pudesse me dizer como conseguir isso

Respostas

DerekO Dec 19 2020 at 12:57

Criar variáveis ​​variáveis é uma má ideia em Python . Em vez disso, listas e dicionários realizam a mesma coisa, então eu recomendo armazenar seus DataFrames em um dicionário com o esquema de nomenclatura que você tem:

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')

Em seguida, você pode acessar cada DataFrame por meio da chave de dicionário: df_dict['df11']