0
我想用兩個較舊的使用PyFITS創建一個新的FITS文件。如何用PyFITS更新FITS數據數組?
import pyfits
from sys import stdout
from sys import argv
import time
file1 = argv[1]
file2 = argv[2]
hdu1 = pyfits.open(file1)
hdu2 = pyfits.open(file2)
new0 = hdu1[0]
new1 = hdu1[0]
sci1 = hdu1[0].data
sci2 = hdu2[0].data
for r in range(0, len(sci1)):
for c in range(0, len(sci1[r])):
add = sci1[r][c] + sci2[r][c]
new0.data[r][c] = add
for r in range(0, len(sci1)):
for c in range(0, len(sci1[r])):
print "(" + str(r) + ", " + str(c) + ") FirstVal = " + str(sci1[r][c]) + " || SecondVal = " + str(sci2[r][c])
print "\t New File/Add = " + str(new0.data[r][c])
打印出來的全部是第一個值,即sci1[r][c]
。這意味着該變量根本沒有被修改。我怎樣才能讓它修改?我很新使用FITS。
事實上,PyFITS剛剛返回NumPy的數組 - 這裏沒有什麼特別的。關鍵是要了解如何正確使用Numpy。 – Iguananaut