1

複数の 1D 配列を並べて表示するテキスト ファイルを python/numpy で作成する方法を教えてください。また、列の上部に配列の名前を含めたいと思います。

これは私が取り組んできた例です。(注: a['site'] 配列内の文字列は文字長が異なるため、列が整列されません)

import numpy as np
dt = np.dtype([('site', '|S11'), ('year', 'i'), ('dat1', 'd'), ('dat2', 'd')])
a = np.zeros(2, dt)
a['site'] = ['Paris', 'London']
a['year'] = [1979, 1980]
a['dat1'] = [272.4322, 270.36]
a['dat2'] = [2.21, 3.55]
np.savetxt('test.txt', a, '%s')

理想的には、次のようなファイルを生成できるものが必要です: http://www.antarctica.ac.uk/data/absl/ABSL-index-Monthly-ERA-Interim_Hosking2013.txt

この質問に対する答えを見つけました。次を参照してください... https://stackoverflow.com/a/19676112/1310153

4

4 に答える 4

2

これを試して:

import numpy as np

dt = np.dtype([('site', '|S11'), ('year', 'i'), ('dat1', 'd'), ('dat2', 'd')])
a = np.zeros(2, dt)
a['site'] = ['Paris', 'London']
a['year'] = [1979, 1980]
a['dat1'] = [272.4322, 270.36]
a['dat2'] = [2.21, 3.55]

np.savetxt('test.txt', a, '%10s')

'%10s'フィールド10幅です。

于 2013-10-29T15:17:38.257 に答える