2つのnumpy行列からのデータを使用してヒストグラムをプロットする

user3313129

私は2つのnumpyの行列を持っているAB

  • A マトリックスの値は、可能な限り1または0(ONまたはOFF)のみです。
  • B 行列には整数(最小値-1)があります。

行列の要素B(X-axis)とそれらの頻度の間のヒストグラムをプロットする必要があります。それらは行列A(対応する位置)にONとしてリストされています。

例えば:

IF A[1][1] and A[2][2] are 1, 
AND B[1][1] and B[2][2] are 2, 
THEN frequency of 2 should be 2 (similarly for each element of matrix B).

基本的に各要素についてBの対応する要素があれば1によりその周波数が増加する、Aです1

私が扱っている行列は巨大です(3992x3992)。これをできるだけ効率的に行うにはどうすればよいですか?

ハイメ

Bすべての小さな正の整数の値の場合、次のようにすることができます。

count = np.bincount(B.ravel())
tally = np.bincount(B.ravel(), weights=A.ravel())
freq = tally / count

しかし、あなたは負の数を持っているので、それを安全にプレイしBnp.unique最初に実行するのがおそらく最善です:

unq_val, unq_idx = np.unique(B.ravel(), return_inverse=True)
unq_count = np.bincount(unq_idx)
unq_tally = np.bincount(unq_idx, weights=A.ravel())
unq_freq = unq_tally / unq_count

今後数週間でnumpy1.9が登場した場合、最初の2行を1行に結合することで、パフォーマンスをさらに向上させることができます。

unq_val, unq_idx, unq_count = np.unique(B.ravel(), return_inverse=True,
                                        return_counts=True)

その後、のxunq_valとに対応するy値が表示されunq_freqます。私のシステムでは、これで構成されたデータを使用します。

A = np.random.randint(2, size=(3992, 3992))
B = np.random.randint(50, size=(3992, 3992))

全体がユニークなものを通過せずに0.3秒で実行され、使用すると6秒強で実行されます。

この記事はインターネットから収集されたものであり、転載の際にはソースを示してください。

侵害の場合は、連絡してください[email protected]

編集
0

コメントを追加

0

関連記事

分類Dev

matplotlibを使用して、pandas DataFrameからの2つのヒストグラムを1つのサブプロットにプロットする

分類Dev

strptimeの日時データを使用してヒストグラムをプロットする

分類Dev

ヒストグラムをプロットし、データから頻度を見つけますか?

分類Dev

データの大きさが大きい場合にggplot2を使用してヒストグラムをプロットする

分類Dev

matplotlibを使用してデータをプロットし、グループのヒストグラムを同じ色で色付けする

分類Dev

データフレームにseabornを使用してヒストグラムをプロットする

分類Dev

jupyter Notebookを使用して、3つのデータセットから3つのグラフを1つのプロットにプロットする

分類Dev

pcolormeshを使用して2Dヒストグラムデータをプロットします

分類Dev

matplotlibを使用して単一のチャートに2つのヒストグラムをプロットする

分類Dev

特定のデータにヒストグラムをプロットする方法

分類Dev

python:2つのヒストグラムを比較するデータセットからレコードを削除します

分類Dev

1つのx軸を使用して1つのデータフレームから複数のグラフをプロットする-Python

分類Dev

2列のパンダデータフレームの要素をヒストグラムとしてプロットする方法は?

分類Dev

Rの2つのステップデータ(ヒストグラムから導出)の違いを強調表示する

分類Dev

わずかに異なるデータでggplot2を使用してヒストグラムをプロットする方法

分類Dev

ggplot2を使用して、複数のstat_binレイヤーを持つヒストグラムプロットに凡例を追加する

分類Dev

異なるグラフを使用して、2つのデータフレームのデータを1つのプロットに結合します

分類Dev

ループからの変数を使用してパンダでヒストグラムをプロットする

分類Dev

散布行列を使用して2つのデータセットをプロットする

分類Dev

Rのヒートマッププロットとして3列のデータフレームからデータをプロットする方法は?

分類Dev

ggplot2のカウントデータを使用してヒストグラムに密度線を追加する

分類Dev

Rのデータフレームのリストを使用してグラフをプロットする方法

分類Dev

Rのデータフレームのリストを使用してグラフをプロットする方法

分類Dev

Matplotlib4つの2Dヒストグラムに対して1つのカラーバーをプロットする方法

分類Dev

1つの図の実際のデータヒストグラムに対して理論的分布をプロットします

分類Dev

ブートストラップ サンプル データを使用して SPSS でヒストグラムをプロットする方法は?

分類Dev

2つのベクトルを並べてヒストグラムをプロットする

分類Dev

データフレーム内の列のデータ型に基づいて、カウントプロットをプロットしたり、ヒストグラムをプロットしたりする関数を作成します

分類Dev

R:1つの列からのデータに対して行列にデータをプロットします

Related 関連記事

  1. 1

    matplotlibを使用して、pandas DataFrameからの2つのヒストグラムを1つのサブプロットにプロットする

  2. 2

    strptimeの日時データを使用してヒストグラムをプロットする

  3. 3

    ヒストグラムをプロットし、データから頻度を見つけますか?

  4. 4

    データの大きさが大きい場合にggplot2を使用してヒストグラムをプロットする

  5. 5

    matplotlibを使用してデータをプロットし、グループのヒストグラムを同じ色で色付けする

  6. 6

    データフレームにseabornを使用してヒストグラムをプロットする

  7. 7

    jupyter Notebookを使用して、3つのデータセットから3つのグラフを1つのプロットにプロットする

  8. 8

    pcolormeshを使用して2Dヒストグラムデータをプロットします

  9. 9

    matplotlibを使用して単一のチャートに2つのヒストグラムをプロットする

  10. 10

    特定のデータにヒストグラムをプロットする方法

  11. 11

    python:2つのヒストグラムを比較するデータセットからレコードを削除します

  12. 12

    1つのx軸を使用して1つのデータフレームから複数のグラフをプロットする-Python

  13. 13

    2列のパンダデータフレームの要素をヒストグラムとしてプロットする方法は?

  14. 14

    Rの2つのステップデータ(ヒストグラムから導出)の違いを強調表示する

  15. 15

    わずかに異なるデータでggplot2を使用してヒストグラムをプロットする方法

  16. 16

    ggplot2を使用して、複数のstat_binレイヤーを持つヒストグラムプロットに凡例を追加する

  17. 17

    異なるグラフを使用して、2つのデータフレームのデータを1つのプロットに結合します

  18. 18

    ループからの変数を使用してパンダでヒストグラムをプロットする

  19. 19

    散布行列を使用して2つのデータセットをプロットする

  20. 20

    Rのヒートマッププロットとして3列のデータフレームからデータをプロットする方法は?

  21. 21

    ggplot2のカウントデータを使用してヒストグラムに密度線を追加する

  22. 22

    Rのデータフレームのリストを使用してグラフをプロットする方法

  23. 23

    Rのデータフレームのリストを使用してグラフをプロットする方法

  24. 24

    Matplotlib4つの2Dヒストグラムに対して1つのカラーバーをプロットする方法

  25. 25

    1つの図の実際のデータヒストグラムに対して理論的分布をプロットします

  26. 26

    ブートストラップ サンプル データを使用して SPSS でヒストグラムをプロットする方法は?

  27. 27

    2つのベクトルを並べてヒストグラムをプロットする

  28. 28

    データフレーム内の列のデータ型に基づいて、カウントプロットをプロットしたり、ヒストグラムをプロットしたりする関数を作成します

  29. 29

    R:1つの列からのデータに対して行列にデータをプロットします

ホットタグ

アーカイブ