Добавление столбца в pandas df с помощью функции

У меня есть панды df (см. ниже). Я хочу добавить столбец под названием "Цена", который я хочу получить значения от использования функции. Как мне это сделать?

function:

    def getquotetoday(symbol):
        yahoo = Share(symbol)
        return yahoo.get_prev_close()


df:

Symbol    Bid      Ask
MSFT     10.25   11.15
AAPL     100.01  102.54


  (...)

1 ответов


В общем, вы можете использовать функцию apply. Если ваша функция имеет только один столбец, вы можете использовать:

df['price'] = df['Symbol'].apply(getquotetoday)

как предложил @EdChum. Если вашей функции требуется несколько столбцов, вы можете использовать, например, что-то вроде:

df['new_column_name'] = df.apply(lambda x: my_function(x['value_1'], x['value_2']), axis=1)