Преобразование списка точек в numpy 2D-массив

Я ' m с помощью genfromtxt для импорта по существу 2D-массива, все значения которого перечислены в текстовом файле формы (x и y - целые числа):

    x1   y1   z1
    x2   y2   z2
    :    :    :

Я использую цикл for ниже, но я почти уверен, что он должен быть однострочный способ сделать это. Что было бы более эффективным способом сделать это преобразование?

raw = genfromtxt(file,skip_header = 6)

xrange = ( raw[:,0].min() , raw[:,0].max() )
yrange = ( raw[:,1].min() , raw[:,1].max() )

Z = zeros(( xrange[1] - xrange[0] +1 , yrange[1] - yrange[0] +1 ))

for row in raw:
    Z[ row[0]-xrange[0] , row[1]-yrange[0] ] = row[2]
8
задан foglerit 18 May 2011 в 15:30
поделиться