-1

私はこの機能を持っています:

get_class(cols):
    if cols == 1:
        return 1
    elif cols ==2:
        return 2
    else:
        return 0

次のような特定の列のリストを作成しました。

cols = ['night', 'day']
cols_en = []

for each in cols:
    each = cols + '_en'
    cols_en.append(each)

ここでは、関数get_classを に適用しcols、出力を に取りたいと考えていますcols_en。このコードを自動化したい:

df ['night_en'] = [1 if x==1 else 2 if x==2 else 0 for x in df['night']]

アイデアは、リストにあるすべての列に関数を適用しcolsて出力を取得することです。列には関数がget_class適用され、出力列は_en最後にあります。たぶんmap関数も使用しています。これを達成するためのアイデアはありますか?同様の記事をいくつか読みましたが、あまり役に立ちませんでした。

4

1 に答える 1