2

次のコードがある場合:

import numpy as np

def myFunction(element, index):
    print element, index

myVector = np.vectorize(myFunction)
myVector(myArray, currentElementIndex)
  • Numpy vectorization でどのようにcurrentElementIndex値を渡すことができますか?myFunction()

前もって感謝します !

編集:myFunction()適用されている現在のアイテムのインデックスをどこで取得する必要があるのか​​ よくわかりません。配列要素を渡す方法は知っていますが、インデックスは知りません。

編集:実際のコードで更新:

import numpy as npy

def getHashValue(character, index):
    return (ord(character) - ord('a')) ** (index + 1)

def getNameHash(name):
    hashValue = getHashValue
    hashValue = npy.vectorize(hashValue)
    hashValue(shortName)
    return
4

1 に答える 1

1

np.vectorizenumpy の便利な関数で、スカラー値 (「数値」) で機能する関数を受け取り、numpy 配列で機能する関数を出力します (ブロードキャストなどのすべての特典付き)。

あなたの場合、それは本当に必要ないので、使用するリスト内包enumerate表記はまさにあなたが探しているものです。あなたのコードはこれを行うことを意図していたと思います:

def getHashValue(character, index):
    return (ord(character) - ord('a')) ** (index + 1)

def getNameHash(name):
    return [getHashValue(c, i) for i, c in enumerate(name)]
于 2013-05-26T15:33:29.000 に答える