我从其他帖子中了解到,你可以遇到在字典上迭代的各种问题。我正在尝试根据键修改其中一列,但它只需要执行上一次操作的值。
D={}
for i in range(len(countries['Country'])):
D["output_fwd_%s" % (countries['Country'][i])]=input_fwd
以上工作正常,我现在拥有所有国家/地区的密钥,这些国家/地区的数据与input_fwd相同。我在国家/地区有12个条目
countries.head()
Out[140]:
Country LHS_BumpFactor RHS_BumpFactor
0 Japan 1 1
1 South Korea 1 1
2 Singapore 1 1
3 HongKong 1 1
4 Taiwan 1 1
现在,我想更改每个新创建的键中的一列
for i in range(len(countries['Country'])):
D['output_fwd_%s' % (countries['Country'][i])['Country']=countries['Country'][i]
上述内容无法按预期工作,并且所有键在Country列中具有相同的值(等于countries['Country'][11]
)
但是,D['output_fwd_%s' % (countries['Country'][2])]['Country']=countries['Country'][2]
单独有效,但如果我再次执行其中两项:
D['output_fwd_%s' % (countries['Country'][1])]['Country']=countries['Country'][1]
D['output_fwd_%s' % (countries['Country'][2])]['Country']=countries['Country'][2]
以上两者的国家/地区值均为countries['Country'][2])
input_fwd.head()
Out[155]:
CCY abc def pqr xyz Country
0 USDINR AAA 1m 0.000000 0.000000e+00 Indonesia
1 USDINR AAA 2m 0.000002 6.000000e-07 Indonesia
2 USDINR AAA 3m 0.000005 2.200000e-06 Indonesia
3 USDINR AAA 4m 0.000009 6.100000e-06 Indonesia
4 USDINR AAA 5m 0.000014 6.100000e-06 Indonesia
实现这一目标的智能方法是什么?我稍后想要将所有上述键中的值连接成一个大型数据帧。
谢谢vm