Pandas での If-Else-Else 条件付き列の作成
データを操作する場合、多くの場合、特定の条件に基づいて新しい列を作成する必要があります。条件。 Pandas は、このプロセスを簡素化する構文を提供し、単一ステップで if-elif-else 条件を定義できるようにします。
これを説明するために、次の DataFrame を考えてみましょう。
A B a 2 2 b 3 1 c 1 3
We次の条件に従う新しい列 'C' を作成したいとします。
カスタム関数の使用
1 つの方法は、行ごとに次の条件を評価するカスタム関数を定義することです。<code class="python">def my_function(row): if row['A'] == row['B']: return 0 elif row['A'] > row['B']: return 1 else: return -1</code>
<code class="python">df['C'] = df.apply(my_function, axis=1)</code>
ベクトル化アプローチ
より効率的なベクトル化されたソリューションとして、NumPy の np.where 関数と pandas の論理インデックスを使用できます。<code class="python">df['C'] = np.where( df['A'] == df['B'], 0, np.where( df['A'] > df['B'], 1, -1))</code>
A B C a 2 2 0 b 3 1 1 c 1 3 -1
以上がPandas で If-Else-Else 条件付き列を作成する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。