【发布时间】:2018-10-13 17:09:18
【问题描述】:
我有一个由数字列组成的数据框。我正在尝试计算每列的十分位数排名值。以下代码为我提供了整个数据框的值。如何按列进行?
pd.qcut(df, 10, labels=False)
谢谢。
【问题讨论】:
我有一个由数字列组成的数据框。我正在尝试计算每列的十分位数排名值。以下代码为我提供了整个数据框的值。如何按列进行?
pd.qcut(df, 10, labels=False)
谢谢。
【问题讨论】:
如果您对列应用 qcut,您将获得一个数据框,其中每个条目都是排名值。
import numpy as np
import pandas as pd
data_a = np.random.random(100)
data_b = 100*np.random.random(100)
df = pd.DataFrame(columns=['A','B'], data=list(zip(data_a, data_b)))
rank = df.apply(pd.qcut, axis=0, q=10, labels=False)
【讨论】: