私は現在、ファジィロジックに参加する必要があるデータセットを持っています。データフレームdf1は、約10回の観測値を持つ、より小さな参照テーブルです。データフレームdf2は私の主なデータフレームであり、ファジー論理結合を実行する必要がある約2000回の観測があります。私は以下の例と私の試みを提示する。Python pandas fuzzy logic
import difflib
df1 = pd.DataFrame({'number':[1,2,3,4,5],'not_shifted':['one','two','three','four','five']})
df2 = pd.DataFrame({'values':[['test'],['a'],['b'],['c'],['d'],['e'],['f'],['f'],['f']],'not_shifted':[np.nan,'one','too','three','fours','five','six',np.nan,'one']})
# my approach
df2['not_shifted'] = df2['not_shifted'].map(lambda x: difflib.get_close_matches(x, df1['not_shifted'])[0])
は、私は次のエラーを取得する:あなたが得る
List out of range
こんにちはセレニティは、迅速な対応と解決策をありがとう:) – Seb
こんにちはセレニティを、私はデータフレームに角括弧を取り除くにはどうすればよいです。答えは正しいですが、ソリューション内の角括弧は少し混乱を招いています。このデータフレームにリストを定義する目的は何ですか?ありがとう。 – Seb