from astrometry.util.multiproc import * from astrometry.util.pyfits_utils import * import numpy as np def cut((infn, outfn)): print 'cut', infn, outfn T = fits_table(infn, columns=['ra','dec','j_mag','j_quality', 'j_cc', 'minor_planet']) #T.about() print 'Read', len(T) nobrightness = chr(0) ccnone = chr(0) I = reduce(np.logical_and, [(T.j_quality != nobrightness), (T.j_cc == ccnone), np.logical_not(T.minor_planet), ]) T.cut(I) print ' Keeping', len(T) T.write_to(outfn, columns=['ra','dec','j_mag']) if __name__ == '__main__': mp = multiproc(8) #mp.map(cut, [('2mass-hp%02i.fits' % hp, '2mass-hp%02i-cut.fits' % hp) mp.map(cut, [('/data1/catalogs-fits/2MASS/2mass_hp%03i.fits' % hp, '2mass-cut/2mass-hp%03i.fits' % hp) for hp in range(972)])