データセットのヒストグラムを作成しようとしたときにNumber of samples, -20, must be non-negative.
取得します。
import numpy as np
my_data = np.loadtxt("my_data.csv", delimiter=',', dtype=np.int16)
n_base, bins_base = np.histogram(my_data, bins="auto")
サンプル数-20は、負でない必要があります。
1.16.4 3.7.4(デフォルト、2019年8月13日、20:35:49)
[GCC 7.3.0]
興味深いことに、このデータセットをfloatに変換すると、問題なくヒストグラムが作成されます。
バグレポートをありがとう。 このバグはmasterブランチにも存在することを確認できます。
numpyのは、開発者:問題は、内部機能があることである_hist_bin_sturges
でhistograms.py
方法に使用する、 ptp
のアレイの最大値と最小値との差を計算するとdtype int16
。 この場合、最大値は32767、最小値は-16であるため、差は32783になります。ただし、 ptp
は配列と同じ型の値を返すため、-32753を返し、結果として誤った計算。
x.ptp()
をx.max().item() - x.min().item()
ようなものに置き換えることで、これを修正できます。
他のほとんどのビン推定量は、 x.ptp()
同じ問題を抱えています。
最も参考になるコメント
バグレポートをありがとう。 このバグはmasterブランチにも存在することを確認できます。
numpyのは、開発者:問題は、内部機能があることである
_hist_bin_sturges
でhistograms.py
方法に使用する、ptp
のアレイの最大値と最小値との差を計算するとdtypeint16
。 この場合、最大値は32767、最小値は-16であるため、差は32783になります。ただし、ptp
は配列と同じ型の値を返すため、-32753を返し、結果として誤った計算。x.ptp()
をx.max().item() - x.min().item()
ようなものに置き換えることで、これを修正できます。