Mencoba menggunakan python untuk membaca dalam beberapa kerangka data untuk analisis saya pada disertasi saya [duplikat]

Dec 19 2020

Jadi saya memiliki banyak peserta dengan masing-masing 3 uji coba. Semua file saya memiliki konvensi penamaan yang sama jadi saya telah menggunakan for loop untuk membaca semua file dengan cepat. Sekarang saya perlu menetapkan setiap file ke dataframe sendiri yang mudah dibaca dan memungkinkan saya mengerjakan sebanyak mungkin pada satu waktu.

saat ini saya punya

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

Sekarang saya perlu menetapkan file ke bingkai data yang akan memiliki nama df (p + 1) (t + 1) yaitu df11, df12, df13, df21, ... df153

Saya perlu mengakses beberapa frame data sekaligus dan tidak yakin bagaimana cara mencapai semua frame data ini dengan cara yang efisien.

Saya akan menghargai jika ada yang bisa memberi tahu saya bagaimana mencapai ini

Jawaban

DerekO Dec 19 2020 at 12:57

Membuat variabel variabel adalah ide yang buruk dengan Python . Sebagai gantinya, daftar dan kamus mencapai hal yang sama, jadi saya akan merekomendasikan menyimpan DataFrames Anda dalam kamus dengan skema penamaan yang Anda miliki:

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

Kemudian Anda dapat mengakses setiap DataFrame melalui kunci kamus: df_dict['df11']