インデックスが遺伝子に対応する密な行列があります。遺伝子識別子は多くの場合整数ですが、連続した整数ではありません。代わりに文字列にすることもできます。
ある種のブースト疎行列を整数キーで使用できると思いますが、それらが連続しているかどうかは問題ではありません。それとも、特に一部の遺伝子が 9 桁の識別子を持っている場合、これはまだ多くのスペースを占めるのでしょうか?
さらに、これはすべてのマトリックスであるため、スパースストレージが適切ではないことを懸念しています(遺伝子が存在する場合、すべてのセルに距離があります)。
行列演算 (行列の乗算など) を実行する必要はほとんどありません。行列 (スライス) からベクトルを引き出す必要があります。
Boost unordered_map (ハッシュ マップ)、あるいは単純に STL マップでキーを設定するのが最適なタイプのマトリックスのようです。
私はこれを間違った方法で見ていますか?本当に自分でロールする必要がありますか? そんな授業、どこかで見た気がした。
ありがとう!