看板 Python 關於我們 聯絡資訊
想請問各位一下, 近日我正在使用日文進行text clustering, 但當我將日文字/詞轉換成dictionary之後, dictionary key就變成unicode而非日文, 請問該如何解決此問題? Code 如下: ## load data allWrdMat10 = pd.read_csv("../../data/allWrdMat10.csv.gz", encoding='CP932') ## Set X as CSR Sparse Matrix X = np.array(allWrdMat10) X = sp.csr_matrix(X) ## create dictionary dict_index = {t:i for i,t in enumerate(allWrdMat10.columns)} freqrank = np.array(dict_index.values()).argsort() X_transform = X[:, freqrank < 1000].transpose().toarray() ################################################################## 若輸入 allWrdMat10.columns 仍會顯現日文,如下: Index([u'?', u'.', u'・', u'%', u'0', u'1', u'10月', u'11月', u'12月', u'1つ', ... u'瀋陽', u'疆', u'盧', u'籠', u'絆', u'胚', u'諫早', u'趙', u'鉉', u'鎔基'], dtype='object', length=8655) 但若輸入 dict_index.keys() 時,則會變成unicode: [u'\u77ed\u9283', u'\u5efa\u3066', u'\u4f0a', u'\u5e73\u5b89', u'\u6025\u9a30', u'\u897f\u65e5\u672c', u'\u5e03\u9663', ...] 請問各位高手該如何解決此一問題?謝謝。 -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 168.150.122.10 ※ 文章網址: https://www.ptt.cc/bbs/Python/M.1496645718.A.A51.html
minikai: 我之前也碰過python2的字典key如果不是英文或數字就會這 06/05 19:23
minikai: 樣,網路上好像沒有比較好的解法。 06/05 19:23
ides13: 先.encode('utf8'),再.decode('utf8'),試試看。 06/05 21:16
ides13: 3.0以上只要使用str即可,str(dict_index.keys()) 06/05 21:23
darkgerm: 2 的編碼顯示問題...還是早早換到 3 吧 06/05 21:36
ides13: https://goo.gl/sQ6Nd3 06/05 23:30