Pandas DataFrame の条件に基づいて列の値を置換
条件に基づいて DataFrame 列の特定の値を置換するには、loc インデックス付けメソッドを使用します。正しく活用する必要があります。提供された例では、タスクは 1990 を超える 'First Season' 列の値を値 1 に置き換えることです。
質問で提供されているコード df.loc[(df['First Season' ] > 1990)] = 1、「ファースト シーズン」列だけではなく、行全体のすべての値を置き換えます。目的の列を正確にターゲットにするには、次の構文が必要です:
df.loc[df['First Season'] > 1990, 'First Season'] = 1
ここで、loc メソッドは、「First Season」列の値が 1990 を超える行を選択します。2 番目の引数「First Season」は、次の値を指定します。その特定の列の値のみが置き換えられる必要があります。
1990 年を超える値に True が対応し、それ以外の場合は False に対応するブール インジケーターを生成するには、次のことが推奨されます。
df['First Season'] = (df['First Season'] > 1990).astype(int)
これは変換します。 True と False の値はそれぞれ 1 と 0 です。
以上がPandas DataFrame の条件に基づいて列の値を置換するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。