[問題] Python2 unicode轉日文

作者: TZULIU (消費券收購商)   2017-06-05 14:55:15
想請問各位一下,
近日我正在使用日文進行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',
...]
請問各位高手該如何解決此一問題?謝謝。
作者: minikai (一肚子拐)   2017-06-05 19:23:00
我之前也碰過python2的字典key如果不是英文或數字就會這樣,網路上好像沒有比較好的解法。
作者: ides13 (juso)   2017-06-05 21:16:00
先.encode('utf8'),再.decode('utf8'),試試看。3.0以上只要使用str即可,str(dict_index.keys())
作者: darkgerm (黑駿)   2017-06-05 21:36:00
2 的編碼顯示問題...還是早早換到 3 吧
作者: ides13 (juso)   2017-06-05 23:30:00

Links booklink

Contact Us: admin [ a t ] ucptt.com