辞書に基づいてnumpy.ndarrayの値を置換

Dictionary values to array according to np.where or similar – StackOverflow

辞書型はそのままだと扱いにくい(Numpyを効率的に活用できない)ので,必要なものをnumpy.ndarrayに置き換える.

import numpy as np


d = {100: 1, 101: 3, 103: 2}
a = np.array([101, 103, 101, 101, 100, 103])
v = np.array(list(d.values()))
sidx = np.searchsorted(list(d), a)
v[sidx]
array([3, 2, 3, 3, 1, 2])
広告
カテゴリー: 未分類 パーマリンク

コメントを残す

以下に詳細を記入するか、アイコンをクリックしてログインしてください。

WordPress.com ロゴ

WordPress.com アカウントを使ってコメントしています。 ログアウト /  変更 )

Google フォト

Google アカウントを使ってコメントしています。 ログアウト /  変更 )

Twitter 画像

Twitter アカウントを使ってコメントしています。 ログアウト /  変更 )

Facebook の写真

Facebook アカウントを使ってコメントしています。 ログアウト /  変更 )

%s と連携中

このサイトはスパムを低減するために Akismet を使っています。コメントデータの処理方法の詳細はこちらをご覧ください