私は2つのCSVファイルを持っています。リストAの各要素がリストBのすべての要素と一致するようにします。リストAはトレーニングセットとして機能し、リストBは編集距離を使用して一致した後に修正されるエラーを持ちます。csvファイルの2つの列が1つの列として読み取られます。 python 2.7
問題は、最初の列には2つの列があり、一意の番号があり、2番目の列には固定する文字列があることです。
イムとして出力を得る:
import csv
from nltk.metrics import distance
with open("all_correct_promo.csv","rb") as file1:
reader1 = csv.reader(file1)
correctPromoList = [''.join(i) for i in reader1]
# print correctPromoList
with open("all_extracted_promo3.csv","rb") as file2:
reader2 = csv.reader(file2)
extractedPromoList = [''.join(i) for i in reader2]
#print extractedPromoList
incorrectPromo = {}
count = 0
for extracted in extractedPromoList:
#print 'Computing %dth promo code...' % count
incorrectPromo[extracted] = find_min_edit(extracted,correctPromoList) # get comma separated str of real promo codes nearest to extracted
count+=1
#print incorrectPromo
for key, value in incorrectPromo.iteritems():
print key ,':', value
は今のユニークな番号が読まなっている
628227 : teitARMTEteke : iQIARMTEMAC
628226 : iQIARMTEMAC 9 : iQIARMTEMAC
628229 : iQIAConfigCH : iQIAConfigCH
627701 : iQIAConfigCH : iQIAConfigCH
CODE:
628227teitARMTEteke : iQIARMTEMAC
628226iQIARMTEMAC 9 : iQIARMTEMAC
628229iQIAConfigCH : iQIAConfigCH
627701iQIAConfigCH : iQIAConfigCH
しかし、私は私の出力になりたいです文字列を修正する方法に影響を与える文字列を使用します。私は数字がその文字列ではなく文字列が
サンプルall_correct_promo.csv
からall_extracted_promo3.csv628229 iQIABundUPGR
628229 iQIAPortUPGR
628229 iQIAConfigCH
628229 iQIARMTEMAC 9
サンプルからリストA.内の文字列にマッチしたばかりされている方法に影響を与えずに表示させたいです
iQ BundleUPGR
IQ MANAGED
IQ04 BRP
IQ1MOBILSUP
IQ2MOBILSUP
iQBundIeUPGR
iQBundle 1
iQBundle 2
リストAとは –
all_correct_promo.csv - リストAになる – safwan
私はちょっと混乱しています。数値を含む文字列は、 'all_correct_promo.csv'から来ています。数値なしで文字列の距離計算をしたいのですか? –