2017-07-15 1 views
3

質問は、私は非常に大きいデータフレームを持っている、と言うが、のように見えたよう:行は、それぞれについてRowXある列ValueX内のすべての値を選択できるようにすることです私が欲しいものPythonの特定の行の値に対してデータフレーム内の列データを選択するにはどうすればよいですか?

 ID Count ValueX Value 2 Value 3 
RowX 1  234.  255.  yes.  yes 
RowY 1  123.  135.  543.  342 
RowW 1  234.  235.  yes.  yes 
RowJ 1  123.  115.  543.  342 
RowA 1  234.  285.  yes.  yes 
RowR 1  123.  165.  543.  342 
RowX 2  234.  255.  yes.  yes 
RowY 2  123.  135.  543.  342 
RowW 2  234.  235.  yes.  yes 
RowJ 2  123.  115.  543.  342 
RowA 2  234.  285.  yes.  yes 
RowR 2  123.  165.  543.  342 
. 
. 
. 
RowX 1233 234.  255.  yes.  yes 
RowY 1233 123.  135.  543.  342 
RowW 1233 234.  235.  yes.  yes 
RowJ 1233 123.  115.  543.  342 
RowA 1233 234.  285.  yes.  yes 
RowR 1233 123.  165.  543.  342 

ID番号1-1233を入力し、リストに戻します。

+0

はあなたのすべてをありがとう!あなたは本当に役に立ちました:) – tushariyer

+0

これらの回答の1つを「受け入れ」にしてください。 –

+0

私はしました!再度ありがとう – tushariyer

答えて

3

IIUC:

In [30]: df.loc[df.index.isin(['RowX']) & df['ID'].between(1, 1233), 'ValueX'].tolist() 
Out[30]: [255.0, 255.0, 255.0] 
+1

ありがとうございました! – tushariyer

4
df.query('1 <= ID <= 1233').loc['RowX', 'ValueX'] 

RowX 255.0 
RowX 255.0 
RowX 255.0 
Name: ValueX, dtype: float64 
+2

質問がリストを要求するので、答えの式に '.tolist()'を追加することを検討しますか? –

0
filtered_df = df[(df.ID.between(1, 1233)) & (df.index == 'RowX')][['ValueX']] 

values_list = filtered_df.ValueX.tolist() 
関連する問題