nachdem ich bisher immer heimlich mitgelesen habe und mir immer wieder tolle Anregungen hohlen konnte, muss ich mich jetzt auch mal mit einer Frage hier an das Forum wenden.
Ich programmiere aktuell an einer Auswerteroutine, welche mir aus einer Zeitserie eine Häufigkeitsverteilung berechnen soll, bzw. dies nur über eine gewisse Spanne der Zeitserie. Das ganze habe ich vor einiger Zeit schonmal selbst programmiert und wollte jetzt, da ich aktuell mein Auswertetool umschreibe, das ganze in numpy realisieren. Grund ist zum einen das Üben mit Numpy und zum anderen wird der Code besser wartbar, da wir hier in unserer Arbeitsgruppe zu mehrt daran arbeiten. Weiterhin wollte ich mal den numba Jit-Compiler testen.
Der Problemcode sieht wie folgt aus
Code: Alles auswählen
import numpy as np
def freqdist(inputarray,internal_switches,config_file, peptide_name):
#Bestimmung der Auswertespanne
eval_start_lenght = (inputarray[1].size-config_file["anal_lenght"]*1000)
eval_end_lenght = inputarray[1].size
#Wenn es Prozentwerte sind dann
if internal_switches["percent"]==True:
alpha_distri, bin_edges=np.histogram(inputarray[1,0,eval_start_lenght:eval_end_lenght],bins=100,range=(0,1),density=True)
beta_distri, bin_edges=np.histogram(inputarray[2,0,eval_start_lenght:eval_end_lenght],bins=100,range=(0,1),density=True)
#Aktuell noch ein Dummy
else:
print("ACTUALLY NOT IMPLEMENTED")
return
#Ausgabesektion
outfile=open("%s/%s_freqdist.dat" % (config_file["outpath"],peptide_name), 'wb')
np.savetxt(outfile, (bin_edges,alpha_distri), fmt='%.8f')
Code: Alles auswählen
File "/home/alex/anaconda/envs/py3k/lib/python3.3/site-packages/numpy/lib/npyio.py", line 1047, in savetxt
fh.write(asbytes(format % tuple(row) + newline))
TypeError: only length-1 arrays can be converted to Python scalars
LG
Lemi
