2017-03-01 11 views

答えて

1

これはどのように機能しますか?これは、値が条件を満たすデータフレームを返します。

new_DF= your_df[your_df['COLUMN TO CHECK HERE'].str.len() != 5] 
print(new_DF) 
+0

答えがありがとう、私はこの道を必要とするでしょう! –

1

私はあなたが簡単なマスキング操作を探していると思う:

filter = lambda string: len(string) == 5 
mask = df[col_to_filter].apply(filter, 1) # Return a boolean vector 
new_df = df[mask].copy() # Create a new dataframe 

あなたの元データフレームの長さが5でないアイテムを見つけるために、逆フィルタを適用することができます。 df.apply()の詳細については

はここを見て:あなたの次の質問にはhttp://pandas.pydata.org/pandas-docs/stable/generated/pandas.DataFrame.apply.html

+0

このメソッドを表示してくれてありがとう、これは私が道のりで必要とするものです! –

2

は、たとえばdfと予想される出力を提供してください。

df = pd.DataFrame({'a' : [1, 2, 3], 'b' : ["jasdjdj", "abcde", "hmmamamam"]}) 
df[df.b.str.len() != 5] 
#gives: 

    a   b 
0 1 jasdjdj 
2 3 hmmamamam 
+0

素晴らしい、ありがとう!これは私が探していたものです! –

+0

あなたの質問は、「これらの行だけを取り出す方法はありますか? (列の代わりに) – cd98

関連する問題