pandas.DataFrame.quantile 中“single”和“table”方法的区别

问题描述 投票:0回答:1

我希望有人能帮助我理解 pandas.DataFrame.quantile 中“single”和“table”方法之间的区别?

是否计算每列(“单”)或所有列(“表”)的分位数。 https://pandas.pydata.org/docs/reference/api/pandas.DataFrame.quantile.html

例如,以下代码会产生相同的结果。

import numpy as np
import pandas as pd

df = pd.DataFrame(np.array([[1, 1], [2, 10], [3, 100], [4, 100]]), columns=["a", "b"])

print(df.quantile(method="single", interpolation="nearest"))
print(df.quantile(method="table", interpolation="nearest"))
a      3
b    100
Name: 0.5, dtype: int64
a      3
b    100
Name: 0.5, dtype: int64
python pandas dataframe numpy
1个回答
0
投票

这是一个示例,其中当仅考虑完整表的列时,

b
中的分位数是不同的:

df = pd.DataFrame(
    np.array([[1, 50], [1, 50], [4, 50], [4, 5]]), columns=['a', 'b']
)

print(df.quantile(method='single', interpolation='nearest'))
print(df.quantile(method='table', interpolation='nearest'))

输出:

a     4
b    50
Name: 0.5, dtype: int64

a    4
b    5
Name: 0.5, dtype: int64
© www.soinside.com 2019 - 2024. All rights reserved.