使用函数在 pandas df 中添加一列
Posted
技术标签:
【中文标题】使用函数在 pandas df 中添加一列【英文标题】:Adding a column in pandas df using a function 【发布时间】:2017-02-24 00:45:31 【问题描述】:我有一个 Pandas 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)
【讨论】:
以上是关于使用函数在 pandas df 中添加一列的主要内容,如果未能解决你的问题,请参考以下文章
pandas concat 2个数据框,并在合并数据中添加一列新数据。
Python Pandas 向DataFrame中添加一行/一列