2016-10-27 26 views
0

私はこのように未編成の列を持っています。私がやろうとしている何パンダは行を繰り返してから条件が満たされるまで壊れます

Name 
Jack 
James 
Riddick 

Random value 
Another random value 

は、このコラムから名前だけを得るが、ランダムな値に実名を区別するための方法を見つけるのに苦労しています。幸いなことに、これらの名前はすべて一緒になっており、ランダムな値はすべて一緒になっています。私ができる唯一のことは、「ランダム値」に達してから中断するまで行を反復することです。

私はラムダを使ってみましたが、成功することはありませんでした。私はそこに壊す方法はないと思っています。この場合、どのように理解力が働くかわかりません。

ここに私が試してみた例があります。

df['Name'] = df['Name'].map(lambda x: True if x != 'Random value' else break) 

しかし、上記は機能しません。私が達成しようとしていることに基づいて何がうまくいくかについての提案はありますか?ありがとう。 「乱数値」を含む行の

+0

名前を明確にするために、名前には姓と名がつけられています。 ''ランダム値 ''は基本的に '' status''で、その下にいくつかの数字があります。私は名前だけを抽出する方法を見つけることによってスクリプトに将来の証明を試みてみたいと思っていました。私は順番に行を繰り返すことができれば、私が 'status'を打つとすぐに壊れると思った。リストを作成して手動で名前を追加し、 'isin(names)'関数を使用する以外のオプションはありません。 – user1165419

+0

名前は常に一列にまとまっていて、ランダムな値は一緒につながっています。何らかの種類のブレーク機能がない場合は、何らかの名前リストを作成するか、代わりにそれを比較しなければならないという意味で正しいです。しかし、新しい名前がExcelシートに追加されるたびに欠点があります。私はdictスクリプトを更新する必要があります。 – user1165419

答えて

1

検索インデックス:

index_split = df[df.Name == 'Random value'].index.values[0] 

したい場合は、後で使用するためにランダムな値の列を保存します。

random_values = df.iloc[index_split+1:,].values[0] 

は、名前の列からランダムな値を削除します

df = df[0:index_split] 
関連する問題