SORU
20 ŞUBAT 2009, Cuma


Ne kadar boş bir dizi oluşturmak NumPy/matrix?

Normalde bir listesi kullanırdım bu şekilde bir dizi ya da matris nasıl kullanılacağını çözemedim. Boş bir dizi (veya matrisi) oluşturmak istiyorum ve bir anda bir sütun (veya satır) ekleyin.

Şu anda bunu yapmak için bulabildiğim tek yol olduğunu

mat = None
for col in columns:
    if mat is None:
        mat = col
    else:
        mat = hstack((mat, col))

Eğer bir liste olsaydı oysa, böyle bir şey yapardım:

list = []
for item in data:
    list.append(item)

Bir şekilde NumPy Dizi veya matris gösterimi böyle bir kullanımı var mı?

CEVAP
20 ŞUBAT 2009, Cuma


NumPy verimli kullanmak için yanlış zihinsel modeli var. NumPy diziler bellek bitişik blok içinde saklanır. Eğer var olan bir dizi satır veya sütun eklemek istiyorsanız, tüm diziyi yeni bir bellek bloğu için bir yönetmen, yeni elementlerin depolanması için boşluk yaratmak gerekiyor. Bu ise sürekli bir dizi oluşturmak için yapılırsa çok verimli olur.

Ekleme satır durumda, en iyi bahis veri kümelerinin eninde sonunda olacak kadar büyük olduğunu, ve veri satır ekleyin: bir dizi oluşturmak için

>>> import numpy
>>> a = numpy.zeros(shape=(5,2))
>>> a
array([[ 0.,  0.],
   [ 0.,  0.],
   [ 0.,  0.],
   [ 0.,  0.],
   [ 0.,  0.]])
>>> a[0] = [1,2]
>>> a[1] = [2,3]
>>> a
array([[ 1.,  2.],
   [ 2.,  3.],
   [ 0.,  0.],
   [ 0.,  0.],
   [ 0.,  0.]])

Bunu Paylaş:
  • Google+
  • E-Posta
Etiketler:

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • ExcelIsFun

    ExcelIsFun

    16 ŞUBAT 2008
  • Joanna Okrajni

    Joanna Okraj

    4 EYLÜL 2010
  • Xcode programming tutorials

    Xcode progra

    17 EYLÜL 2006