私はCSVファイルを検索するためにパンダとnumpyを使用していますが、問題は、たとえば、私が 'foo'を探していて、値が 'foo1'であれば、それでもtrueを返します。どうすれば 'foo'だけを検索できますか?私は特定の行を検索していますが、時には値が 'foo1'や 'foo2'に変更されるなど、その値の末尾に値が追加されることがあります。ここに私のコードだ:CSV Python 2.7でのみ正確な値を検索する方法は?
df = pd.read_csv('MyFile.csv')
x = np.where((df['Name'] == name) & (df['Num'] == 'foo'))
try:
if (x[0][0] + 1) > 0: #also if someone has a better method
return True #for returning True please let me know
except IndexError:
return False
あなたが「特定の行を検索」していると言うとき、あなたは何を意味するのですか?どのような出力をしたいですか? – ASGM
'df ['Num']'のサンプルを見せて、見つけたい項目を指定してください。 'df ['Num'] == 'foo1''の行を保持したり除外したりしますか?また、私はその 'x [0] [0]'テストの目的を理解していません。 – hpaulj
@hpaulj私はcsvで名前を検索し、Numがスクリプトを最後に実行したときと同じであるかどうかを確認しようとしています。それが同じであればTrueを返したい、それが変わった場合はFalseを返す。しかしNumが 'foo1'に変更されても、変更されているにもかかわらずTrueを返します。 x [0] [0]テストでは、これがxが見つかったかどうかを調べる方法として使用しています。それは私に配列の行番号を与え、[0] [0]は行番号をstrとして返し、ヘッダ行を考慮しないために行を追加します。簡単な方法があると思いますが、idkの方がいいと思います。 – Ecom1414