You can subscribe to this list here.
2000 
_{Jan}
(8) 
_{Feb}
(49) 
_{Mar}
(48) 
_{Apr}
(28) 
_{May}
(37) 
_{Jun}
(28) 
_{Jul}
(16) 
_{Aug}
(16) 
_{Sep}
(44) 
_{Oct}
(61) 
_{Nov}
(31) 
_{Dec}
(24) 

2001 
_{Jan}
(56) 
_{Feb}
(54) 
_{Mar}
(41) 
_{Apr}
(71) 
_{May}
(48) 
_{Jun}
(32) 
_{Jul}
(53) 
_{Aug}
(91) 
_{Sep}
(56) 
_{Oct}
(33) 
_{Nov}
(81) 
_{Dec}
(54) 
2002 
_{Jan}
(72) 
_{Feb}
(37) 
_{Mar}
(126) 
_{Apr}
(62) 
_{May}
(34) 
_{Jun}
(124) 
_{Jul}
(36) 
_{Aug}
(34) 
_{Sep}
(60) 
_{Oct}
(37) 
_{Nov}
(23) 
_{Dec}
(104) 
2003 
_{Jan}
(110) 
_{Feb}
(73) 
_{Mar}
(42) 
_{Apr}
(8) 
_{May}
(76) 
_{Jun}
(14) 
_{Jul}
(52) 
_{Aug}
(26) 
_{Sep}
(108) 
_{Oct}
(82) 
_{Nov}
(89) 
_{Dec}
(94) 
2004 
_{Jan}
(117) 
_{Feb}
(86) 
_{Mar}
(75) 
_{Apr}
(55) 
_{May}
(75) 
_{Jun}
(160) 
_{Jul}
(152) 
_{Aug}
(86) 
_{Sep}
(75) 
_{Oct}
(134) 
_{Nov}
(62) 
_{Dec}
(60) 
2005 
_{Jan}
(187) 
_{Feb}
(318) 
_{Mar}
(296) 
_{Apr}
(205) 
_{May}
(84) 
_{Jun}
(63) 
_{Jul}
(122) 
_{Aug}
(59) 
_{Sep}
(66) 
_{Oct}
(148) 
_{Nov}
(120) 
_{Dec}
(70) 
2006 
_{Jan}
(460) 
_{Feb}
(683) 
_{Mar}
(589) 
_{Apr}
(559) 
_{May}
(445) 
_{Jun}
(712) 
_{Jul}
(815) 
_{Aug}
(663) 
_{Sep}
(559) 
_{Oct}
(930) 
_{Nov}
(373) 
_{Dec}

S  M  T  W  T  F  S 



1
(16) 
2
(9) 
3
(10) 
4
(10) 
5
(1) 
6
(2) 
7
(7) 
8
(3) 
9
(6) 
10
(15) 
11
(3) 
12
(2) 
13

14
(2) 
15

16
(3) 
17
(3) 
18

19
(5) 
20
(1) 
21
(7) 
22
(2) 
23
(7) 
24
(1) 
25
(4) 
26

27

28

29
(1) 
30




From: gf <gyromagnetic@gm...>  20051125 22:18:35

From: Francesc Altet <faltet@...> Re: help in improving data analysis code 20051125 07:32 >>A Divendres 25 Novembre 2005 16:27, Francesc Altet va escriure: > > print nn[argsort(abs(nn_cnn_c.mean()),0)][:int(sz*0.10),0] >> >> Ups. I have had a confusion. This should work better ;) >> >> print nn[argsort(abs(nnnn.mean()),0)][:int(sz*0.10),0] Hi Francesc, Thank you for the suggestions. Your code is performing a different task than mine was. In particular, I believe it does not 'remean' the data after removing each point. However, based on the great ideas from your code, I now have the function below that looks to be more efficient (although I haven't measured it). Any additional suggestions are appreciated. g =3D=3D=3D=3D from numarray import argsort, floor, absolute def eliminate_outliers(data,frac): num_to_eliminate =3D int(floor(data.size())*frac) for i in range(num_to_eliminate): data =3D data[argsort(absolute(datadata.mean()),0)][:1,0] return data if __name__ =3D=3D "__main__": from numarray.mlab import rand sz =3D 100 nn =3D rand(sz,1) nn[:10] =3D 20*rand(10,1) nn[sz10:] =3D 20*rand(10,1) print eliminate_outliers(nn,0.10) 
From: Francesc Altet <faltet@ca...>  20051125 15:32:13

A Divendres 25 Novembre 2005 16:27, Francesc Altet va escriure: > print nn[argsort(abs(nn_cnn_c.mean()),0)][:int(sz*0.10),0] Ups. I have had a confusion. This should work better ;) print nn[argsort(abs(nnnn.mean()),0)][:int(sz*0.10),0] =2D=20 >0,0< Francesc Altet =A0 =A0 http://www.carabos.com/ V V C=E1rabos Coop. V. =A0=A0Enjoy Data "" 
From: Francesc Altet <faltet@ca...>  20051125 15:27:26

A Divendres 25 Novembre 2005 15:24, gf va escriure: > > from numarray import add, array, asarray, absolute, argsort, floor, take, > size > > def mean(m,axis=3D0): > m =3D asarray(m) > return add.reduce(m,axis)/float(m.shape[axis]) > > def eliminate_outliers(dat,frac): > num_to_eliminate =3D int(floor(size(dat,0)*frac)) > for i in range(num_to_eliminate): > ind =3D argsort(absolute(datmean(dat)),0) > sdat =3D take(dat,ind,0)[:,0] > dat =3D sdat[:1] > return dat > > # > > if __name__ =3D=3D "__main__": > from MLab import rand > sz =3D 100 > nn =3D rand(sz,1) > nn[:10] =3D 20*rand(10,1) > nn[sz10:] =3D 20*rand(10,1) > print eliminate_outliers(nn,0.10) =46or sz=3D100, the next line of code is 10x faster on my machine (more if sz is bigger): print nn[argsort(abs(nn_cnn_c.mean()),0)][:int(sz*0.10),0] I haven't checked it very carefully, so you should double check it. BTW, you will need to use the numarray MLab interface: from numarray.mlab import rand Cheers, =2D=20 >0,0< Francesc Altet =A0 =A0 http://www.carabos.com/ V V C=E1rabos Coop. V. =A0=A0Enjoy Data "" 
From: gf <gyromagnetic@gm...>  20051125 14:24:12

Hi, I am a newbie to Numeric/numarray programming and would appreciate your help in improving the code below (which I'm sure is quite ugly to an experienced numarray programmer). An analysis we are carrying out requires the following: 1. evaluate the mean of a set of data 2. eliminate the data point farthest from the mean 3. repeat steps 1 and 2 until a certain specified fraction of points has been eliminated. Since this analysis will have to be performed (probably repeatedly) on approximately ten thousand data sets, each of which contains 100500 points, I would like the code to be as fast as possible. Thanks for your help. g =3D=3D=3D=3D from numarray import add, array, asarray, absolute, argsort, floor, take, s= ize def mean(m,axis=3D0): m =3D asarray(m) return add.reduce(m,axis)/float(m.shape[axis]) def eliminate_outliers(dat,frac): num_to_eliminate =3D int(floor(size(dat,0)*frac)) for i in range(num_to_eliminate): ind =3D argsort(absolute(datmean(dat)),0) sdat =3D take(dat,ind,0)[:,0] dat =3D sdat[:1] return dat # if __name__ =3D=3D "__main__": from MLab import rand sz =3D 100 nn =3D rand(sz,1) nn[:10] =3D 20*rand(10,1) nn[sz10:] =3D 20*rand(10,1) print eliminate_outliers(nn,0.10) 