由最后一个有效条目组成的子集- pandas



我正在尝试使用最后一个特定值来子集df。使用下面的命令,我想对X出现在Item之前的每一行进行子集。

import pandas as pd
df = pd.DataFrame({              
'Item' : ['Y','X','B','X','A','Y'], 
'Number' : [2,3,2,4,2,1],                          
})
df_out = df[df['Item'] == 'X'].last_valid_index() 

目的输出:

Item  Number
0    Y       2
1    X       3
2    B       2
3    X       4

尝试使用iloc:

a = df[df['Item'] == 'X'].last_valid_index()
print(df.iloc[:a + 1])

输出:

Item  Number
0    Y       2
1    X       3
2    B       2
3    X       4

最新更新