頑張って、長続きしたい。

メモ書きをひたすら書く。継続は力なり。

python numpyのwhereで複数の条件をつける

numpyのwhereで複数条件にするときは、それぞれの条件をちゃんと()でくくる!
初歩的な文法をわかりきってないからこうなる・・・

import numpy as np
import scipy as sp
import matplotlib.pyplot as plt

import sys

filename=sys.argv[1]

data=np.loadtxt(filename,delimiter=' ',
                dtype={'names':('code','pow','alpha','k',
                                'xyz','normal','z','normal2','z2'),
                       'formats':('S4','S3','S3','i4',
                                  'f8','f8','f8','f8','f8')})

for alpha in np.unique(data['alpha']) :
    for pow in np.unique(data['pow']) :
        print data[np.where((data['alpha']==alpha) & (data['pow']==pow))]