标识python数据帧中相等的行。。。

2024-10-01 11:39:03 发布

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

我有一个很大的数据帧(称为AllDTrades),有很多安全交易,比如:

    trd_exctn_dt    ascii_rptd_vol_tx   rptd_pr    yld_pt       sttl_dt
1   2018-07-02      150000.0            98.6100    4.476914     7/5/2018 
....

现在,我需要找到一个函数,它能够告诉我特定交易在数据帧中的位置和次数。所以我需要问一些关于这句话的问题(这当然行不通):

AllDTrades.loc[AllDTrades==SpecificTrade], 

在哪里

具体贸易是一种贸易,让我们这样说:

2018-07-02      150000.0            98.6100    4.476914     7/5/2018

所以,我需要弄清楚具体的交易 1) 是AlldTrade的一部分 2) 所有数据交易的交易地点 3) 此外,如果在所有数据交易中有多个交易,如SpecificTrade,我需要知道它们在所有数据交易中的位置

可能吗

事先非常感谢

干杯,杰斯珀


Tags: 数据ptasciidt交易prtxvol
1条回答
网友
1楼 · 发布于 2024-10-01 11:39:03

您可以使用^{}^{}作为index索引值的AllDTrades列,该列的值与SpecificTrade等值相同,如果没有参数on,则它会被所有列合并:

print (AllDTrades)
  trd_exctn_dt  ascii_rptd_vol_tx  rptd_pr    yld_pt   sttl_dt
1   2018-07-02           150000.0    98.61  4.476914  7/5/2018
2   2018-07-03           290000.0    98.61  4.476914  7/5/2018
3   2018-07-02           150000.0    98.61  4.476914  7/5/2018


SpecificTrade = AllDTrades.iloc[[0]]
print (SpecificTrade)
 trd_exctn_dt  ascii_rptd_vol_tx  rptd_pr    yld_pt   sttl_dt
1   2018-07-02           150000.0    98.61  4.476914  7/5/2018

df = AllDTrades.reset_index().merge(SpecificTrade)
print (df)
   index trd_exctn_dt  ascii_rptd_vol_tx  rptd_pr    yld_pt   sttl_dt
0      1   2018-07-02           150000.0    98.61  4.476914  7/5/2018
1      3   2018-07-02           150000.0    98.61  4.476914  7/5/2018

vals = df['index']
print (vals)
0    1
1    3
Name: index, dtype: int64

print (AllDTrades.loc[vals])
  trd_exctn_dt  ascii_rptd_vol_tx  rptd_pr    yld_pt   sttl_dt
1   2018-07-02           150000.0    98.61  4.476914  7/5/2018
3   2018-07-02           150000.0    98.61  4.476914  7/5/2018

相关问题 更多 >