outfileを使用して別のファイルに小数点以下の場合の値を書き込む
-
21-12-2019 - |
質問
Bellowは、2つのTXTファイルからの値を取得して別のTXTファイルを作成するコードです。
plate1, mjd1, fiber1, d1, pval1 = np.loadtxt('combine3ga.txt', unpack='True')
plate2, mjd2, fiber2, d2, pval2 = np.loadtxt('combine4ga.txt', unpack='True')
with open('ekek2.txt', 'w') as outfile:
for i in range(len(plate1)):
if d2[i] < d1[i] and pval2[i] > 0.8:
print plate2[i], mjd2[i], fiber2[i], d2[i], pval2[i]
with open('ekek2.txt', 'a') as outfile:
outfile.write('{0} {1} {2}\n'.format(plate2[i], mjd2[i], fiber2[i]))
.
出力ファイルの最初の数行は
のように見えます1958.0 53385.0 614.0
2214.0 53794.0 308.0
436.0 51883.0 634.0
価値が
のように小数を含まない全額なので、私はそれを作ろうとしています。1958 53385 614
2214 53794 308
436 51883 634
解決
aのための配列を組み合わせるための洗練された方法があり、ファイルに書き込むためのより洗練された方法がより高いかもしれません。しかし、あなたのコードを使用して、あなたは最後の行を交換して望ましい結果を得ることができるはずです:
outfile.write('%d %d %d\n' % (int(plate2[i]), int(mjd2[i]), int(fiber2[i])))
所属していません StackOverflow