2016-04-28 22 views
1

SESSIONPRICE_POINTという2つの列を持つデータフレームがあります。Pandasデータフレームの列に特定の値の数を格納する

n = pd.value_counts(df['price_point'].values, sort=False) 

SESSION

PRICE_POINTは、このような

私は次のことを実行している、 '高' '低' などの2つの値を持っている(様々なIPセッションを持つ値)カテゴリ変数であります私の出力は、

high 30204 
low  62978 
dtype: int64 

私は必要です"price_point"列から "high"と "low"のカウントを別々に取得し、その値をn = 30204とm = 62978として保存したいと考えています。

アイデアはありますか?

+0

IIUCではありませんこれは単に 'high = n.index ['high']'と 'low = n.index ['low']'ですか? @Stefanに感謝します。 – EdChum

答えて

0

方法について:

n = df.price_point.value_counts().high 
m = df.price_point.value_counts().low 

df = pd.DataFrame(data={'price':['high', 'high', 'low', 'low', 'low', 'low']}) 
df.price.value_counts().high 

2 

または、二段階で:

counts = df.price_point.value_counts() 
n = counts.high 
+0

これは働いた – Anu

0

IIUCその後、あなただけのインデックスシリーズを値を使用して、例:

In [94]: 
df = pd.DataFrame({'col1':['high','high','low','low','low','low']}) 
df['col1'].value_counts() 

Out[94]: 
low  4 
high 2 
Name: col1, dtype: int64 

In [96]: 
counts.index 

Out[96]: 
Index(['low', 'high'], dtype='object') 

In [97]:  
counts = df['col1'].value_counts() 
print('high: ', counts['high'], 'low: ', counts['low']) 

high: 2 low: 4 
関連する問題