私のパンダのデータフレームに列名を持つ4つの列があり、それぞれA、B、C、DがUIのフィールドにマップされています。それぞれは独自の目的を持っていますが、ユーザーはフィールドAまたはBまたはCまたはDのフィールドA情報を入力しています。データをクリーンアップして解析のためにA列に移動しようとしています。したがって、列Aに値がある場合は、BまたはCまたはDの値は気にしません。ただし、列Aに値がない場合は、他の列のユーザーエントリを探して列Aを取得する必要があります列Aの実際の値は常にリストからのいくつかの値で始まります。したがって、列Aにデータがない場合は、列Bの値を検索し、その値がリストの値であるかどうかを確認し、列Bがヌルであるか、私たちのリストからの値よりも他の値は、それを残して、D列同様、C列でも同じことを確認してください。複数のif条件に基づいたpython pandas列
不明な点がある場合は教えてください。
例、
mylist = ['senior','junior','midlevel']
inputdf
A B C D
senior male senior UK
senior candidate USA
female junior
junior male junior AU
male candidate midlevel
female candidate AU
Outputdf,
A B C D
senior male senior UK
senior senior candidate USA
junior female junior
junior male junior AU
midlevel male candidate midlevel
female candidate AU
ありがとうございました。しかし、いくつかの場合、mylistの値は複数回現れます。例えば、列Aには値がありませんが、列Bにはジュニア、列Cにはジュニアです。この場合、列Aに重複が書き込まれます。最初に見つかった列。 –
値が返されると、重複した比較は行われません。 return文が実行されるとすぐにループが壊れ、関数はそれ以上の比較を行いません。それでも問題に直面している場合は、コードを実行する前後にいくつかの例を追加することができます。 –
ありがとうございます。私は適用関数が一度に1つの列を関数に渡すと思う。 –