我有一个数据帧df1
,它有两列:
val1 val2
Fwd 729
jeoq 28.2
ke 225.24
我还有另一个数据帧df2
,它有:
val1 val2
jdj 184.8
oem 33
kiwe 99.4
frqp 82
我想为df2
中的每个值找到它在df1
中的位置(即从df1
中的df2
中找到每个值的分位数),并将其添加到df2
中的新列中(即每个值的分位数)
因此,预期输出(分位数值只是为了模仿这个想法,因为我不知道如何计算它们):
df2
val1 val2 quantile
jdj 184.8 25.3
oem 33 67.2
kiwe 99.4 55.2
frqp 82 51.5
有什么可以帮忙的吗
好的,我假设您想知道
df2['val2']
中的每个值,在df1['val2']
中排序的值中对应的百分位数是多少您应该首先构建一个已排序的序列,以便以后能够使用
searchsorted
:完成后,很容易找到百分比:
根据您的示例数据,它给出:
因为来自
df2['val2']
的所有值都位于来自df1['val2']
的第一个值和第二个值(共3个)之间相关问题 更多 >
编程相关推荐