我有一个数据帧有一些溢价和罢工如下
下面是一个用CSV表示的示例数据集
TimeStamp 230PE 235CE 235PE 240CE P/S C/S PutPrem CallPrem
01/04/2016 07:04 7,731040352 10,75210291 9,802974229 8,00003216 235 240 9,802974229 8,00003216
01/04/2016 07:11 7,731040352 10,75210291 9,802974229 8,00003216 235 240 9,802974229 8,00003216
01/04/2016 07:14 8,376613441 10,6956091 9,871715249 8,477475891 235 240 9,871715249 8,477475891
01/04/2016 07:21 8,376613441 10,6956091 9,871715249 8,477475891 235 240 9,871715249 8,477475891
01/04/2016 07:24 7,539026197 10,88459752 9,81295159 7,934973889 235 240 9,81295159 7,934973889
01/04/2016 07:31 7,539026197 10,88459752 9,81295159 7,934973889 235 240 9,81295159 7,934973889
01/04/2016 07:34 7,186339187 10,65619385 9,316327371 8,717498947 235 240 9,316327371 8,717498947
目前,我的Python数据帧需要用PutPrem和CallPrem中的值填充,其他的都要填充。你知道吗
PutPrem/CallPrem中的值由p/S或C/S列中的值标识
所以第一张唱片
邮政编码是235
Thus value of Put Prem-> Value of "235PE" during the same timestamp
-> Value of (Column 4, Row 2)
-> 9.8029
为了实现这一点,我正在考虑在p/S或C/S处映射每个值,并将其附加上“PE”或“CE”,然后找到可用保费之间的结果匹配列
此后,我可以只引用(ColNum,RowNum)处的值,因为RowNum将始终是当前记录。你知道吗
我正在使用。列。获取位置匹配列号
在获取一个特定记录的列号时,下面的方法可以很好地工作
PutPremColNum[0]=df.columns.get_loc(df['PutStrike'][x].astype(str) + "PE" )
其中x是记录编号
但是,我希望这是矢量化的,这样我就可以计算出所有记录的所需列数
像这样的事情:
PutPremColNum=df.columns.get_loc(df['PutStrike'].astype(str) + "PE" )
CallPremColNum=df.columns.get_loc(df['CallStrike'].astype(str) + "CE" )
如果问题不清楚,请告诉我。你知道吗
我用excel中的MATCH函数实现了同样的功能 如有可能,请提出一个替代解决方案/方法
目前没有回答
相关问题 更多 >
编程相关推荐