2017-08-20 15 views
1

データフレームdfが与えられている場合は、条件df[condition]を適用してサブセットを取得します。サブセット内に行があるかどうかをチェックしたいのですが、これは条件が有効なものであることを示します。フィルタデータフレームの列を持っているかどうかをチェックするための最良の方法は何データフレームに行があるかどうかを確認するパンダ的な方法

if df[condition] has rows: 
    do something 

:私は確認したい何

In [551]: df 
Out[551]: 
    Col1 
0  1 
1  2 
2  3 
3  4 
4  5 
5  3 
6  1 
7  2 
8  3 

はこのようなものでしょうか?ここでは動作しないいくつかのメソッドです:

  1. if df[df.Col1 == 1]:ValueError: The truth value of a DataFrame is ambiguous.

  2. if df[df.Col1 == 1].any():を与えます。また、私はlenをテストすることができたとValueError

を与えます。他の方法はありますか?

答えて

4
あなたが使用することができ

df.empty

df_conditional = df.loc[df['column_name'] == some_value] 
if not df_conditional.empty: 
    ... # process dataframe results 
+2

https://stackoverflow.com/questions/19828822/how-to-check-whether-a-pandas-dataframe-is-empty 'len'を使用していることを示唆していますチェックアウトする価値がある –

関連する問題