numpyのgenfromtxt()を使ってデータを読み込むときのメモ。
次のようなデータがあるとする。
以下のようにしてデータを読み込む.
dtpyeでは(name, dtype)を指定する。dtypeのiやfはintやfloat。そのとなりの数字はバイト数を表す。
出力は以下のようになる。
名前をつけておけば取り出すときに
<や|はバイトオーダーと呼ばれるものらしい。Wikipediaも参考になった。
次のようなデータがあるとする。
text = """ 1 excellent 13.5 4 2 poor 2.385 3
3 good 11.58 6
"""
以下のようにしてデータを読み込む.
dtpyeでは(name, dtype)を指定する。dtypeのiやfはintやfloat。そのとなりの数字はバイト数を表す。
data = np.genfromtxt(StringIO(text), dtype=[('num', 'i8'), ('rating', 'S4'), ('voltage', 'f8'), ('rank', 'i8')], delimiter=' ')
出力は以下のようになる。
array([(1, 'exce', 13.5, 4), (2, 'poor', 2.385, 3), (3, 'good', 11.58, 6)], dtype=[('num', '<i8'), ('rating', 'S4'), ('voltage', '<f8'), ('rank', '<i8')])
名前をつけておけば取り出すときに
>>> data['rating'] array(['exce', 'poor', 'good'], dtype='|S4')
<や|はバイトオーダーと呼ばれるものらしい。Wikipediaも参考になった。