2011-08-02 6 views
1

にインポートするにはどうすればいいですか?私はそのuncode UTF-8、私はそれを作成したので、エンコードされた、私はnumpyのので、それを読みたいと思う本ユニコード(utf-8)のcsvファイルからnumpyの配列

debug('opening ' + ALL_USER_TOKEN_COUNTS_FILE) 
    file = codecs.open(ALL_USER_TOKEN_COUNTS_FILE, encoding="utf-8",mode= "w") 
    for (user, token) in tokenizer.get_tokens_from_all_files(): 
     #... count tokens .. 
     file.write(unicode(username +","+ token +","+ str(count) +"\r\n")) 

などを知っている

$ cat all_user_token_counts.csv 
@5raphaels,in,15 
@5raphaels,for,15 
@5raphaels,unless,11 
@5raphaels,you,11 

私はファイルを持っているが、このようになります。配列それがこの質問を書き込む処理でI実験として、この、または何か...

array([[u'@5raphaels', u'in', 15], 
      [u'@5raphaels', u'for', 11], 
      [u'@5raphaels', u'unless', 11]], 
      dtype=('<U10', '<U10', int)) 

のように見えるので、それは、COMそれは可能ではないかもしれないと私にはわかっていますか?もしそうなら、私は知りたい!

ありがとうございます!

+0

は私の本当の問題は、私は1つのアレイ内の異なるデータ型を使用しようとしていたことに気づいた - 最終的に、私はnumpyのがあることを好きだと思ういけません – utunga

答えて

2

これはnp.loadtxtで簡単に行うことができます。

import numpy as np 
arr=np.loadtxt('all_user_token_counts.csv',delimiter=',', 
        dtype = '|U10,<U10,int') 
print(arr) 

# [(u'@5raphaels', u'in', 15) (u'@5raphaels', u'for', 15) 
# (u'@5raphaels', u'unless', 11) (u'@5raphaels', u'you', 11)] 
関連する問題