El 28/02/2012, a las 00:08, Daπid escribió:
> Hola:
>
> Estoy haciendo unas simulaciones de Monte Carlo para estudiar la variación de
> un parámetro en función de otro u otros dos. En total, tengo del orden de mil
> o diez mil datos. ¿Cuál es la forma más sencilla de almacenarlos y
> recuperarlos?
>
> Intentaré explicarme mejor con un ejemplo. Ahora mismo tengo un fichero de
> texto plano así:
>
> 1000 0.363815214388
> 1000 0.359016260729
> 1151 0.38896507684
> 1151 0.388929158895
> 1151 0.388769658166
>
> Donde la primera columna es N y la segunda, C. Quiero, por ejemplo, poder
> obtener la media de cada valor de C para cada N. Por supuesto, programarlo a
> mano es fácil, pero estoy seguro de que hay algo mejor.
Hola,
En cuatro líneas usando numpy:
# Importamos numpy:
import numpy
# Leemos los datos del "fichero" en un array llamado r
# Tener en cuenta que lee todo como float
r = numpy.loadtxt("fichero")
# Iteramos sobre los valores distintos de la primera columna
for C in numpy.unique(r[:,0]):
# Pintamos el valor de la primera columna (pasándolo a entero) y
# la media de los valores de la segunda columna para las filas
# correspondientes a dicho valor de la primera columna
print int(C), r[:,1][r[:,0] == C].mean()
Un saludo,
Pepe
_______________________________________________
Python-es mailing list
[email protected]
http://mail.python.org/mailman/listinfo/python-es
FAQ: http://python-es-faq.wikidot.com/