2

パンダ初心者です。

これを分類器にフィードするときにトレーニング ラベルとして機能する新しい列をデータ フレームに作成しようとしています。

ラベル列の値は、指定された Id が (Value1 > 0) または (Value2 > 0) の場合は 1.0 で、リンゴまたはナシの場合は 0.0 です。

私のデータフレームは Id によってインデックス付けされた行で、次のようになります。

Out[30]: 
                Value1                                               Value2  \
    ProductName    7Up     Apple Cheetos     Onion      Pear PopTart    7Up   
    ProductType Drinks Groceries  Snacks Groceries Groceries  Snacks Drinks   
Id                                                                        
100                0.0       1.0     2.0       4.0       0.0     0.0    0.0   
101                3.0       0.0     0.0       0.0       3.0     0.0    4.0   
102                0.0       0.0     0.0       0.0       0.0     2.0    0.0   


    ProductName     Apple Cheetos     Onion      Pear PopTart  
    ProductType Groceries  Snacks Groceries Groceries  Snacks  
Id                                                         
100                   1.0     3.0       3.0       0.0     0.0  
101                   0.0     0.0       0.0       2.0     0.0  
102                   0.0     0.0       0.0       0.0     1.0  

パンダのウィザードがこの操作の構文を教えてくれたら、私の心はすべてをまとめるのに苦労しています。

ありがとう!

4

2 に答える 2

2

関数を定義します。

def new_column (x):
       if x['Value1'] > 0 :
          return '1.0'
       if x['Value2'] > 0 :
          return '1.0'
       return '0.0'

データに適用します。

df.apply (lambda x: new_column (x),axis=1)
于 2016-09-02T22:32:02.207 に答える