サンプル上で(区切り文字として空白を使用して)操作すると、4つのフィールドを持つ1次元構造化配列が得られます。フィールド名は、/
文字を取り除いた日付です。
In [245]: np.genfromtxt(txt,dtype=None,names=True)
Out[245]:
array([(4315, 228046, 227475, 239080), (19866, 22241, 27211, 25313),
(23436, 23576, 23678, 24687), (23593, 58074, 61569, 58564),
(23609, 334673, 313980, 246823)],
dtype=[('seqid', '<i4'), ('9192009', '<i4'), ('9262009', '<i4'), ('1032009', '<i4')])
「列/フィールド」は、フィールド名によってアクセスされています
In [252]: data['9192009']
Out[252]: array([228046, 22241, 23576, 58074, 334673])
(私はビットで取り外した文字を見てみましょう)
type
は、有用なテストではありません構造化アレイ要素。 dtype
使用します
In [250]: np.genfromtxt(txt,dtype=None,names=True,deletechars='')
Out[250]:
array([(4315, 228046, 227475, 239080), (19866, 22241, 27211, 25313),
(23436, 23576, 23678, 24687), (23593, 58074, 61569, 58564),
(23609, 334673, 313980, 246823)],
dtype=[('seqid', '<i4'), ('9/19/2009', '<i4'), ('9/26/2009', '<i4'), ('10/3/2009', '<i4')])
:
In [247]: type(data[0])
Out[247]: numpy.void
In [248]: data.dtype
Out[248]: dtype([('seqid', '<i4'), ('9192009', '<i4'), ('9262009', '<i4'), ('1032009', '<i4')])
deletechars
パラメータは、私は/
が削除されているかどうかを制御できます