Đang cố gắng sử dụng python để đọc trong nhiều khung dữ liệu để phân tích luận văn của tôi [trùng lặp]

Dec 19 2020

Vì vậy, tôi có nhiều người tham gia với 3 thử nghiệm mỗi người. Tất cả các tệp của tôi có cùng một quy ước đặt tên vì vậy tôi đã sử dụng vòng lặp for để đọc nhanh tất cả các tệp. Bây giờ tôi cần gán từng tệp vào khung dữ liệu riêng của nó để dễ đọc và cho phép tôi làm việc trên nhiều tệp nhất có thể tại một thời điểm.

hiện tại tôi có

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

Bây giờ tôi cần gán các tệp vào khung dữ liệu sẽ có tên là df (p + 1) (t + 1) tức là df11, df12, df13, df21, ... df153

Tôi sẽ cần truy cập nhiều khung dữ liệu cùng một lúc và không biết chắc làm thế nào để đạt được tất cả các khung dữ liệu này một cách hiệu quả.

Tôi sẽ đánh giá cao nếu ai đó có thể cho tôi biết làm thế nào để đạt được điều này

Trả lời

DerekO Dec 19 2020 at 12:57

Tạo biến biến là một ý tưởng tồi trong Python . Thay vào đó, danh sách và từ điển thực hiện điều tương tự, vì vậy tôi khuyên bạn nên lưu trữ DataFrames của mình trong từ điển với sơ đồ đặt tên mà bạn có:

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

Sau đó, bạn có thể truy cập từng DataFrame thông qua khóa từ điển: df_dict['df11']