Ускорение конкатенации фреймов данных Pandas

Легкий способ.

Объединение DataFrame - дорогостоящее мероприятие, особенно с точки зрения времени обработки. Представьте, что у вас есть 12 фреймов данных Pandas разного размера, которые вы хотите объединить на оси столбца, как показано в следующем поле.

df1 Shape:  (24588, 31201) 
df2 Shape:  (24588, 1673) 
df3 Shape:  (24588, 5)
df4 Shape:  (24588, 1)
df5 Shape:  (24588, 148) 
df6 Shape:  (24588, 1) 
df7 Shape:  (24588, 6) 
df8 Shape:  (24588, 1) 
df9 Shape:  (24588, 1) 
df10 Shape: (24588, 1) 
df11 Shape: (24588, 1) 
df12 Shape: (24588, 19)

Чтобы ускорить работу pd.concate (), вам нужно запомнить две вещи.

  1. Для каждого DataFrame всегда df = df.reset_index (drop = true). Имейте в виду, что команда конкатенации использует индекс, без правильного индекса вы получите смещенные фреймы данных.
  2. Всегда старайтесь объединить список DataFrames. Объединение списка выполняется быстрее, чем объединение отдельных фреймов данных, т. Е. df_concat = pd.concat ([df1, df2,….], Axis = 1)
df_concat = pd.concat([df1, df2, df3, df4, df5, df6, df7, df8, df9, df10, df11, df12], axis=1)

Это все, что вам нужно знать :)

Доктор Ори Коэн имеет докторскую степень. в области компьютерных наук с упором на машинное обучение. Он является ведущим специалистом по обработке данных в New Relic TLV, занимается исследованиями машинного и глубокого обучения в области AIOps.