二维直方图的 numpy 数字化
numpy digitize for 2 dimensional histogram
我正在搜索 np.digitize
二维直方图函数。
来自这些代码行:
H, xedges, yedges = np.histogram2d(coord[:, 0], coord[:, 1])
H = H.T
print(H)
我得到以下直方图:
[[ 7. 20. 16. 14. 10. 8. 16. 7. 10. 7.]
[11. 11. 10. 10. 5. 10. 9. 12. 7. 7.]
[13. 11. 13. 9. 13. 10. 14. 6. 9. 9.]
[ 5. 5. 4. 5. 7. 13. 14. 11. 6. 10.]
[14. 4. 11. 5. 7. 14. 6. 11. 11. 5.]
[12. 9. 5. 7. 9. 14. 15. 15. 13. 12.]
[ 5. 13. 15. 9. 10. 7. 10. 12. 7. 5.]
[ 4. 10. 15. 7. 6. 10. 13. 5. 12. 12.]
[12. 6. 11. 8. 5. 5. 13. 14. 13. 9.]
[10. 11. 9. 8. 18. 13. 16. 8. 8. 13.]]
我想找出直方图的每个元素代表的指数,例如(第 1 行,第 1 列 -> 7 -> 应计算 7 个索引)。
我花了很多时间试图关注 this post, but I get stuck at one place (I can explain where, if no better approach is known). Another potential duplicate is here 但这也没有解决问题。
那么有人知道如何解决这个问题吗?
谢谢!
你想要scipy.stats.binned_statistic_2d:
H, xedges, yedges, binnumber = scipy.stats.binned_statistic_2d(
coord[:, 0], coord[:, 1], None, 'count', expand_binnumbers=True)
前三个 return 值与您的原始代码相同。第四个 (binnumber
)` 是:
a shape (2,N) ndarray, where each row gives the bin numbers in the corresponding dimension.
我正在搜索 np.digitize
二维直方图函数。
来自这些代码行:
H, xedges, yedges = np.histogram2d(coord[:, 0], coord[:, 1])
H = H.T
print(H)
我得到以下直方图:
[[ 7. 20. 16. 14. 10. 8. 16. 7. 10. 7.]
[11. 11. 10. 10. 5. 10. 9. 12. 7. 7.]
[13. 11. 13. 9. 13. 10. 14. 6. 9. 9.]
[ 5. 5. 4. 5. 7. 13. 14. 11. 6. 10.]
[14. 4. 11. 5. 7. 14. 6. 11. 11. 5.]
[12. 9. 5. 7. 9. 14. 15. 15. 13. 12.]
[ 5. 13. 15. 9. 10. 7. 10. 12. 7. 5.]
[ 4. 10. 15. 7. 6. 10. 13. 5. 12. 12.]
[12. 6. 11. 8. 5. 5. 13. 14. 13. 9.]
[10. 11. 9. 8. 18. 13. 16. 8. 8. 13.]]
我想找出直方图的每个元素代表的指数,例如(第 1 行,第 1 列 -> 7 -> 应计算 7 个索引)。 我花了很多时间试图关注 this post, but I get stuck at one place (I can explain where, if no better approach is known). Another potential duplicate is here 但这也没有解决问题。
那么有人知道如何解决这个问题吗?
谢谢!
你想要scipy.stats.binned_statistic_2d:
H, xedges, yedges, binnumber = scipy.stats.binned_statistic_2d(
coord[:, 0], coord[:, 1], None, 'count', expand_binnumbers=True)
前三个 return 值与您的原始代码相同。第四个 (binnumber
)` 是:
a shape (2,N) ndarray, where each row gives the bin numbers in the corresponding dimension.