Python:如何将 def 中的参数传递给 pandas loc 中的输入?

Posted

技术标签:

【中文标题】Python:如何将 def 中的参数传递给 pandas loc 中的输入?【英文标题】:Python: how can I pass parameters in def to inputs in pandas loc? 【发布时间】:2021-02-21 13:05:58 【问题描述】:

我想将我的 def 中的参数传递给 pandas loc 中的输入,但我不知道该怎么做,因为 loc 需要定义的标签作为输入。或者有没有其他方法可以在 Python 中执行 Excel INDEX MATCH 等效但不使用loc?非常感谢! 请在下面找到我的代码:

def get_correl_diff_tenor(p1, p2):
        correl = IRCorrMatrix.loc['p1', 'p2']
        return correl

loc['p1', 'p2'] 中的p1p2 是指调用下面矩阵中对应相关值的男高音对。

IRCorrMatrix如下图所示,是一个由tenor对定义的相关矩阵。

         2w    1m    3m    6m    1y    
Tenor
2w     1.00  0.73  0.64  0.57  0.44  
1m     0.73  1.00  0.78  0.67  0.50  
3m     0.64  0.78  1.00  0.85  0.66  
6m     0.57  0.67  0.85  1.00  0.81  
1y     0.44  0.50  0.66  0.81  1.00

【问题讨论】:

【参考方案1】:

IIUC 从 'p1', 'p2' 中删除 '' 以从函数中传递变量:

IRCorrMatrix.loc[p1, p2]

【讨论】:

@IIUC 表示如果我理解正确。函数应该像out = get_correl_diff_tenor('2w','1m') 一样调用并返回0.73

以上是关于Python:如何将 def 中的参数传递给 pandas loc 中的输入?的主要内容,如果未能解决你的问题,请参考以下文章

如何将附加参数传递给自定义 python 排序函数

如何将参数传递给python中的嵌套类

如何将参数传递给 Python 模块中的主函数?

将参数传递给 Docker 容器中的 Python argparse

如何将隐式参数传递给隐式类

如何使用ctypes,python将字符串参数传递给C++函数