Как распараллелить обработку нескольких столбцов данных в python?

У меня DataFrame такой:

col1  col2   col3    col4    col5    col5   col6                                            
 0.6  '0'   'first'  0.93   'lion'   0.34   0.98
 0.7  '1'  'second'  0.47    'cat'   0.43   0.76
 0.4  '0'   'third'  0.87  'tiger'   0.24   0.10
 0.6  '0'   'first'  0.93   'lion'   0.34   0.98
 0.5  '1'   'first'  0.32  'tiger'   0.09   0.99
 0.4  '0'   'third'  0.78  'tiger'   0.18   0.17
 0.5  '1'  'second'  0.98    'cat'   0.47   0.78

Мне нужно взять каждый столбец (скажем, col1, col2, col3 и т. д.) Из приведенного выше DataFrame в цикле for для функции, как показано ниже:

list=[]
for col in df.columns:
    result = performDBSCAN(df[col])
    list.append([col,score])

def performDBSCAN(feature):
    ......(some implementation)
    score = scorecalculate(col)
    ......(some implementation
    return somevalue

def scorecalculate(feature):
    .......(some implementation)
    return scorecal

По сути, я хотел запустить приведенный выше код для многих столбцов, что требует больше времени для завершения времени обработки. Я хотел знать, как сделать это быстрее или работать параллельно в python, поскольку у меня 404 столбца и 5000 строк. Также мне нужны предложения о том, могу ли я сделать это в Tensorflow или Spark? (Я задаю этот вопрос, поскольку понятия не имел о Spark и Tensorflow, но ищу предложения)

помогает ли этот ответ stackoverflow.com/questions/50414300/…?

Geetha 13.09.2018 20:46

Нет, мне это не помогает. По сути, мне нужно выполнить алгоритм dbscan для каждого столбца параллельно. Код, который я написал, занимает много времени (так как он выполняется в последовательном режиме). Я также пробовал что-то вроде этого stackoverflow.com/questions/43588931/…, но не смог помочь (он выполняется, но не показывает никаких результатов).

Vas 13.09.2018 23:12
1
2
85
0

Другие вопросы по теме