Мне нужна помощь, чтобы запустить параллельный код на python. Я не думаю, что для моей проблемы я могу поделиться исполняемым кодом, но все же вы можете помочь мне концептуально решить мою проблему.
Я написал функцию, которая принимает в качестве входных данных строку данных panda.
Эта функция выполняет несколько x вычислений и возвращает обратно строку из фрейма данных panda, в качестве входных данных которого используются разные имена столбцов.
До сих пор я использовал это в цикле for для получения в качестве входных данных строк, а после возвращения функции я добавлял ее вывод в новый фрейм данных
new_df=pd.DataFrame(columns=['1','2','unique','occurence','timediff','ueid'], dtype='float')
for i in range(0,small_pd.shape[0]): #small_pd the input of the dataframe
new_df=new_df.append(SequencesExtractTime(small_pd.loc[i]))
Теперь у меня проблема с параллельным выполнением этого кода. Я нашел многопроцессорный пакет.
from joblib import Parallel, delayed
import multiprocessing
num_cores = multiprocessing.cpu_count()
results = Parallel(n_jobs=num_cores)(SequencesExtractTime(small_pd.loc)(i) for i in range(0,small_pd.shape[0]))
но, к сожалению, это не выполняется, так как я не знаю, как объявить, что входные данные - это отдельные строки этого фрейма данных.
Не могли бы вы помочь мне с тем, как я могу добиться такого распараллеливания в python? Входные данные - это строки информационного кадра, выходные данные - это строки информационного кадра, которые необходимо объединить.
Большое спасибо
Привет
Alex