numpy配列の整数とキーワードの両方のインデックスを処理するクラスを作成する簡単な方法があるのだろうかと思っていました。python numpy array/dict multiple inheritance
最後の目標は、各変数の名前を使用してインデックスを作成できるnumpy配列を持つことです。 I、リスト
import numpy as np
a = [0,1,2,3,4]
names = ['name0','name1','name2','name3','name4']
A = np.array(a)
を持っている場合たとえば、私は(例えば)A [「NAME1」]の呼び出しで簡単の値を取得できるようにし、まだアレイは全て保持しなければなりませんnumpy配列の機能性
ありがとうございます!
ピーター
編集:助けを
本当にありがとうございました、私は、使用目的により明確にしようとするでしょう!私は、変数のベクトルを格納して適用するためにnumpy配列を使用する既存のコードセットを持っています。私のベクトルは約30のエントリを持っています。
特定の変数の値を確認したいとき、またはその変数を変更したいときは、どの変数がどの変数に対応しているかを覚えておく必要があります配列が作成されたら変更してください)。今私は辞書を使って追跡しています。たとえば、30個の値を持つ配列が 'VarVector'です。 「vmax」はエントリ15であり、値は0.432である。 VarDict [entry] = indexのように、30個のキー「VarDict」を持つ並行辞書を作成します。私は呼び出し
VarVector [VarDict [「VMAX」]]単にの良い方法があるだろう場合、私は思っていた0.432
を返します
を連鎖によって、VMAXの値を見つけることができますこの方法VarVector [15](互換性用)とVarVector ["vmax"](私にとっては便宜上)の両方が同じ番号を指し示すように、これらの2つの構造を組み合わせます。
ありがとうございます! Peter
numpy配列のポイントは、それらがCで書かれているため、高速です。これを行うと、配列数が減るという利点が失われます - あなたはPythonリストを使うこともできます! – katrielalex
あなたはこれをしたい理由を与えることができますか? – katrielalex
@katrielalex - 必ずしもそうではありません... numpy配列の '__getitem__'はすでにかなり遅いです。これにこれを追加することで、大幅に遅くするつもりはありません。しかし、これはかなり一般的なユースケースであり、すでに数回( 'pandas'と' larry')行われています。この比較を見てみましょう:http://scipy.org/StatisticalDataStructures「ラベル付き軸」または「ラベル付きアイテム」を持つことは、場合によっては良いことです。 –