Menu
Coddy logo textTech

Filter Data

Coddyの「Pandas Analytics」コースのレッスン 9/19。

Pandasでは、特定の条件に基づいて行をフィルタリングできます。行をフィルタリングするには、角括弧の中に条件を記述します:

filtered_df = df[df["number_column"] > 5]
filtered_df = df[df["string_column"] == "String Match"]

複数の条件を組み合わせるには、& (and) キーワードと | (or) キーワードを使用します。各条件は括弧 () で囲む必要があります:

filtered_df = df[(df['number_column'] >= 3) & (df['string_column'] == 'String Match')]

not キーワードは ~ です (5より大きくない場合):

filtered_df = df[~df["number_column"] > 5]

特定の列からすべての空でない値を取得するには:

filtered_df = df[~df["column"].isna()]

値が配列内にあるかどうかを確認するには:

filtered_df = df[df['column'].isin(['value1', 'value2', 'value3'])]

 

challenge icon

チャレンジ

簡単

CSVファイル stats.csv には、統計に関する情報が含まれています。

ファイルの最初の5行は以下の通りです:

ID,COUNTRY,COLOR,SKILL,SKILL_POINTS,UTILIZATION,IS_VALID,CATEGORY
1,France,Signal violet,marksmanship,14,0.1924,1,SHOW
2,Solomon Islands,Pearl violet,crocheting,4,0.6108,1,TREE
3,Germany,Bottle green,calligraphy,12,0.88646,0,SHOW
4,Mauritania,Fawn brown,paper cutting,9,0.058,1,JAPE

次の条件に一致する行のみを取得してください:

  • SKILL_POINTS7 より大きい。
  • UTILIZATION0.7 以下、または 0.95 より大きい。
  • IS_VALID が 1 に等しい。
  • CATEGORYJAPEPLQRGHUP のいずれかである。

最終的な結果を df 変数に格納してください。

自分で試してみよう

# pandas は pd として既にインポートされています
df = pd.read_csv("./stats.csv")
# 以下にコードを書いてください

Pandas Analyticsのすべてのレッスン