Essayer d'utiliser python pour lire dans plusieurs dataframes pour mon analyse sur ma thèse [dupliquer]

Dec 19 2020

J'ai donc plusieurs participants avec 3 essais chacun. Tous mes fichiers ont la même convention de dénomination, j'ai donc utilisé une boucle for pour lire rapidement tous les fichiers. Je dois maintenant affecter chaque fichier à son propre dataframe qui est facile à lire et me permet de travailler sur autant que possible à la fois.

actuellement j'ai

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

Je dois maintenant attribuer les fichiers à une trame de données qui aurait un nom de df (p + 1) (t + 1) c'est-à-dire df11, df12, df13, df21, ... df153

J'aurai besoin d'accéder à plusieurs trames de données à la fois et je ne sais pas comment réaliser toutes ces trames de données de manière efficace.

J'apprécierais que quelqu'un puisse me dire comment y parvenir

Réponses

DerekO Dec 19 2020 at 12:57

Créer des variables variables est une mauvaise idée en Python . Au lieu de cela, les listes et les dictionnaires accomplissent la même chose, je vous recommande donc de stocker vos DataFrames dans un dictionnaire avec le schéma de dénomination que vous avez:

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

Ensuite, vous pouvez accéder à chaque DataFrame via la clé de dictionnaire: df_dict['df11']