从序列更新数据帧行

2024-05-14 03:47:43 发布

您现在位置:Python中文网/ 问答频道 /正文

我有以下pandas数据帧state_df:

                  abc, xyz
exchange, symbol
JSE,      MTN,    123, 546
          OML,    674, 235
CME,      ES,     235, 563
          YM,     453, 356

因此,基本上这代表的是一个列列表,其中的索引是exchange+符号的组合。在

我根据一个特定的exchange+符号组合从这个数据框中选择一行(这将是唯一的,因此会产生一个pandas系列):

^{pr2}$

我将得到的序列传递给另一个模块,在那里执行几个操作。最终返回序列,此时我需要用更新的行更新原始数据帧。在

我知道有一个数据帧更新方法,但这似乎只用于通过使用另一个dataframe更新dataframe。在

在我的例子中,我需要从新修改的系列中更新原始数据帧。当然,序列的名称将与dataframe中需要更新的索引行相同。在

有办法吗?在


Tags: 数据dataframepandasdf原始数据exchange符号序列
2条回答

你可以试着简单地做:

state_df.loc[exchange, symbol] = updated_result

简单的重新分配就可以做到:

df.loc['JSE', 'OML'] = df.loc['JSE', 'OML'].apply(np.sqrt)

要玩的完整代码:

^{pr2}$

结果是DataFrame

                       abc        xyz
exchange symbol                      
JSE      MTN     123.00000  546.00000
         OML      25.96151   15.32971 # square root is here
CME      ES      235.00000  563.00000
         YM      453.00000  365.00000

相关问题 更多 >