我有一个熊猫数据帧,由两列组成:path
和loss
。
path
值是从0到300的整数loss
值是具有大量小数位数的浮点数
我想确定loss
中的百分位数,然后获取相应的path
值。我使用以下代码来识别百分位数:
c80 = np.percentile(df['loss']], 80)
然后,我尝试了许多失败的解决方案,最近一次是:
c80_path = df[df['loss'] == c80].path
和
c80_path = df.loc[df['loss'] == c80,'path']
打印结果c80_path
值返回"Series([], Name: dtype: int64)"
我需要一个介于0和300之间的整数值。有什么想法吗?
百分位数可以(在本例中也将(是不在loss
列中的值。因此CCD_ 10不产生任何结果。要找到最接近的值,您可以尝试以下操作:
c80_path = df.iloc[(df['loss']-c80).abs().argsort()[0]]['path']