gpt4 book ai didi

python - 如何根据引用字典的条件在 Pandas 中创建新列

转载 作者:行者123 更新时间:2023-12-03 19:15:18 25 4
gpt4 key购买 nike

我有正在尝试标准化的库存数据,但在创建新列时遇到问题。我需要能够通过引用 Ticker 列中的内容并从字典中获取相应的值,使用 Ticker 值作为键,向名为 Yahoo Ticker 的新列添加一个值。这是我正在使用的字典示例:

dict = {'AAB': 'AAB.TO',
'ABX': 'ABX.TO',
'XDU': 'XDU-U.TO' }

我想使用基于字典键的值向我的数据框添加一列,例如我想打开这个数据框:
df = pd.DataFrame({'Ticker':['AAB','ABX','XDU'] })

变成这样的数据帧:
newdf = pd.DataFrame({'Ticker':['AAB','ABX','AAV'],
'Yahoo Ticker':['AAB.TO','ABX.TO','XDU-U.TO']})

以前我试过这个,但没有用
for index, value in df.iterrows():
df.loc[df['Ticker'][index] in ticker_dictionary, 'Yahoo Tickers'] = ticker_dictionary[value]

最佳答案

您可以使用 map :

import pandas as pd

df = pd.DataFrame({'Ticker': ['AAB', 'ABX', 'XDU']})

d = {'AAB': 'AAB.TO',
'ABX': 'ABX.TO',
'XDU': 'XDU-U.TO'}

df['Yahoo Ticker'] = df['Ticker'].map(d)
print(df)

输出
  Ticker Yahoo Ticker
0 AAB AAB.TO
1 ABX ABX.TO
2 XDU XDU-U.TO

关于python - 如何根据引用字典的条件在 Pandas 中创建新列,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60920464/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com