From: Mathew Y. <my...@jp...> - 2006-07-06 20:42:17
|
The very example you give produces IndexError: arrays used as indices must be of integer type this is with 0.9.8 Also .....while your example says "rand" I had to say numpy.rand This is on WindowsXP Mathew Travis Oliphant wrote: > Mathew Yeates wrote: > >> Not working. >> A[row,all_dates == 10] = -1 where all_dates is a matrix with column >> length of 14 [[960111,..,.. >> and A is a matrix with same column length >> >> I get >> IndexError: arrays used as indices must be of integer type >> >> when I print out all_dates == 10 >> I get >> [True True True True True True True True True False False False True >> True]] >> >> I experimented with "<" instead of "==" but I still get boolean >> values as indices. >> >> Any help? >> >> > What version are you using? Can you give an example that shows the > error. It's hard to guess the type of all the variables. The > following works for me. > > import numpy > print numpy.__version__ > A = numpy.matrix(rand(3,14)) > all_dates = array([10,10,1,10,1,10,0,10,0,10,0,1,10,1]) > row = 2 > A[row, all_dates == 10] > > > > > > -Trvis > > |