2017-11-01 16 views
0

私はpythonとpandasの完全な初心者です。私はdataframeのすべての行を繰り返し、 "Class"列の要素が1であるかどうかを確認したいのですか?これを達成する方法は?条件を追加し、pandasデータフレームを追加しますか?

また、これらの特定の行をデータフレームに追加したいのですか?このように

  emptydataframe = pd.DataFrame(columns=['A','B','C','D','E','F','G']) 
     data = pd.read_csv('data/trainData.csv') 
     count = 0 
     for rows in data: 
      if(data[rows]["Class"] == 1): 
       count+= 1 
       emptydataframe.append(data[rows]) 

どうすればよいですか?

+1

は** 'ループ内のデータ・フレームに.append'しないでください。それは**恐ろしく**非効率です。代わりに、 'pandas'インデックスを使用して、それは' pandas'の全体のポイントです –

+0

@ juanpa.arrivillaga私に教えてくれてありがとう – RAM

答えて

1

私が正しく理解していれば - あなたはあなたのDFをループにしたくない:

In [185]: df 
Out[185]: 
    A B C Class 
0 1 2 3  0 
1 4 5 6  1 
2 7 8 9  1 
3 10 11 12  0 

In [186]: new = df.loc[df['Class']==1] 

In [187]: new 
Out[187]: 
    A B C Class 
1 4 5 6  1 
2 7 8 9  1 
+0

あなたはすごいです:)、感謝救い主。 – RAM

関連する問題