SoONicK
14-02-2013, 10:02
Salve a tutti.
Sto scrivendo un codice python che mi permetta di cercare una periodicita' nei dati di un file.
Per far questo avevo intenzione di sommare i primi 50 dati presenti nella prima colonna della tabella e vedere se la somma e' uguale, entro un certo errore, alla somma dei 50 dati che si trovano dopo un certo lasso di tempo (periodo).
Il problema che trovo ora e' che non so come sommare solo i primi 50 dati.
Per lavorare con i file .fits c'e' bisogno di PyFits:
...
import pyfits
...
data=pyfits.open('any.lc.fits')
time = data[1].field(0)
rate = data[1].field(1)
Questo significa che nella prima unita' del file .fits (data[1]) e nella prima colonna (field(0)) si trovano i tempi, nella seconda colonna (field(1)) i conteggi (o rate).
Pensavo di sommare i primi 50 conteggi con qualcosa del genere:
count1 = [ sum(x) for x in data[1].field(1) ]
ma non so come limitare la somma ai soli primi 50 elementi...
Non sono molto pratico di python, dunque qualsiasi aiuto e' benvenuto.:rolleyes:
Sto scrivendo un codice python che mi permetta di cercare una periodicita' nei dati di un file.
Per far questo avevo intenzione di sommare i primi 50 dati presenti nella prima colonna della tabella e vedere se la somma e' uguale, entro un certo errore, alla somma dei 50 dati che si trovano dopo un certo lasso di tempo (periodo).
Il problema che trovo ora e' che non so come sommare solo i primi 50 dati.
Per lavorare con i file .fits c'e' bisogno di PyFits:
...
import pyfits
...
data=pyfits.open('any.lc.fits')
time = data[1].field(0)
rate = data[1].field(1)
Questo significa che nella prima unita' del file .fits (data[1]) e nella prima colonna (field(0)) si trovano i tempi, nella seconda colonna (field(1)) i conteggi (o rate).
Pensavo di sommare i primi 50 conteggi con qualcosa del genere:
count1 = [ sum(x) for x in data[1].field(1) ]
ma non so come limitare la somma ai soli primi 50 elementi...
Non sono molto pratico di python, dunque qualsiasi aiuto e' benvenuto.:rolleyes: