私はパンダの時系列ts = pd.TimeSeries(np.random.normal(0, 1, 100))
を持っており、最初のq-1
分位のサンプルのみを選択したいと思います。パンダスq分位数のデータを選択
私は分数間隔をpd.qcut(ts, 10)
で得ることができますが、最初の9分位数のサンプルのみをどのように選択できますか?
私はパンダの時系列ts = pd.TimeSeries(np.random.normal(0, 1, 100))
を持っており、最初のq-1
分位のサンプルのみを選択したいと思います。パンダスq分位数のデータを選択
私は分数間隔をpd.qcut(ts, 10)
で得ることができますが、最初の9分位数のサンプルのみをどのように選択できますか?
はqcut()機能でlabels=False
オプションを使用します。
ts = pd.DataFrame(pd.TimeSeries(np.random.normal(0, 1, 100)))
ts[1] = pd.qcut(ts[0], 10, labels=False)
ts.loc[ts[1] < 9]
あなたは、整数であなたの分位にラベルをデータフレームにそれを参加して、選択するために、ブール式を書くことができ:
quantiles = pd.qcut(ts, 10, labels=range(10))
quantiles.name = 'quantiles'
df = pd.DataFrame(ts).join(quantiles)
df[df['quantiles'] < 9]
pd.TimeSeries
は推奨されていません。ちょうど使用するpd.Series
ts = pd.Series(np.random.normal(0, 1, 100))
ts[pd.qcut(ts, 10, labels=False) < 9]