前提・実現したいこと
文章から単語を取り出し、単語のベクトル表現と比較し、一致していれば配列に組み込みたいです。
単語のベクトル表現は分かち書きした後fasttextの.vecから使用しています。
以下のようにすると、vecに全く同じリストが数行できてしまいます。
1行ずつ取り出しているのでそれに合わせたリストの更新がしたいです。
発生している問題・エラーメッセージ
[[0.51035449 0.4818712 0.32899473 ... 0.45615825 0.5425049 0.5512611 ] [0.51035449 0.4818712 0.32899473 ... 0.45615825 0.5425049 0.5512611 ] [0.51035449 0.4818712 0.32899473 ... 0.45615825 0.5425049 0.5512611 ] ... [0.51035449 0.4818712 0.32899473 ... 0.45615825 0.5425049 0.5512611 ] [0.51035449 0.4818712 0.32899473 ... 0.45615825 0.5425049 0.5512611 ] [0.51035449 0.4818712 0.32899473 ... 0.45615825 0.5425049 0.5512611 ]]
該当のソースコード
python
1vec = [] 2one = [] 3sun = [] 4 5for i in l.test:#文章 6 for s in i: #単語 7 for v in pa.word2:#ベクトル配列 8 #print(v[0]) 9 #comp = s == v[0] 10 #print(comp) 11 if s == v[0]: 12 one.append(v) 13 vec.append(one) 14 15vec =np.array(vec) 16vec = np.delete(vec,0,2) 17vec = vec.tolist() 18 19for i in range(len(vec)): 20 for j in range(len(vec[i])): 21 for k in range(len(vec[i][j])): 22 vec[i][j][k]=float(vec[i][j][k]) 23 24vec = np.array(vec) 25vec = np.sum(vec,axis=2) 26 27 28print(vec)
試したこと
vecの場所を変えましたがダメでした。