1

numpy.genfromtext ですべての dtype のみを指定できるか、まったく指定できない理由がわかりません。私は、ほとんどのフィールドで明らかな (デフォルトの) ことを実行できるようにしようとしていますが、難しいと思われるものをいくつか指定しています。通常、データ ファイル内のフィールドの完全なリストはわかりません。
次のように、ファイルを 2 回読み込むよりも良い方法はありますか?

dtypeoverrides={'textfield':'a20','anotherTrickyfield':'a10','nonexisting field':'a1'}
tsv='inputfile.tsv'

indata=np.genfromtxt(tsvF, delimiter='\t',names=True,dtype=None)

if dtypeoverrides:
   dd=indata.dtype
   print dd
   dd=[(name,dtypeoverrides.get(name,dd[name])) for name in dd.names]
   print dd
   indata=np.genfromtxt(tsvF, delimiter='\t',names=True,dtype=dd)
4

0 に答える 0