Я хотел бы знать, как можно распараллелить следующую строку
df.interpolate(method='linear', axis=1, inplace=True)
, где df
- это pandas
DataFrame
.
Я уже узнал, чтоспособ распараллеливания пользовательской функции осуществляется через multiprocessing
следующим образом
from multiprocessing import Pool
CORES = 8
PARTITIONS = CORES
def parallelize_dataframe(df, func):
df_split = np.array_split(df, PARTITIONS)
pool = Pool(CORES)
df = pd.concat(pool.map(func, df_split))
pool.close()
pool.join()
return df
res = parallelize_dataframe(data_frame, custom_function)
, где custom_function
- это функция, которая будет применяться к каждому разделу data_frame.
Однако я не понимаю, как использовать его с df.interpolate
, поскольку interpolate
- это метод класса DataFrame, а не пользовательская функция.