Ошибка памяти при применении лямбда-функции для создания нового столбца в фрейме данных panda - PullRequest
0 голосов
/ 19 марта 2020

Я пытаюсь создать новый столбец в кадре данных pandas на основе определенной пользователем функции, используя df.apply с лямбда-выражением. Фрейм данных состоит из 241573 строк, и я получаю ошибку памяти до завершения инструкции.

Пример текущего кода:

def func(col1,col2,col3)
    if "string1" in col2
        return col3
    else "string2" in col2
        return col1

df.apply(lambda x: func(x["column1"],x["column2"],x["column3"]), axis = 1)

В приведенном выше примере я упростил эту функцию для любых решений. которые не используют формат выше фактической функции, также включает в себя другой elif, который берет столбец, который содержит списки в каждой ячейке и выполняет итерацию по списку, выполняя некоторые строковые функции для удаления определенных подстрок. Вот почему я изначально решил использовать лямбду, так как ее было проще всего написать как функцию.

В ошибке просто указано, что недостаточно памяти для создания массива.

Все решения и предложения приветствуются.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...