Numpy: ํžˆ ์ŠคํŠธ ๊ทธ๋žจ ์ƒ˜ํ”Œ ์ˆ˜๊ฐ€ bins = "auto"์ธ ๊ฒฝ์šฐ ์Œ์ˆ˜์ž…๋‹ˆ๋‹ค.

์— ๋งŒ๋“  2019๋…„ 08์›” 27์ผ  ยท  4์ฝ”๋ฉ˜ํŠธ  ยท  ์ถœ์ฒ˜: numpy/numpy

๋‚ด ๋ฐ์ดํ„ฐ ์„ธํŠธ์˜ ํžˆ์Šคํ† ๊ทธ๋žจ์„ ๋งŒ๋“ค๋ ค๊ณ  ํ•  ๋•Œ 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")

๋‹ค์Œ์€ my_data.csv์ž…๋‹ˆ๋‹ค.

์—๋Ÿฌ ๋ฉ”์‹œ์ง€:


์ƒ˜ํ”Œ ์ˆ˜ -20์€ ์Œ์ˆ˜๊ฐ€ ์•„๋‹ˆ์–ด์•ผํ•ฉ๋‹ˆ๋‹ค.

Numpy / Python ๋ฒ„์ „ ์ •๋ณด :


1.16.4 3.7.4 (๊ธฐ๋ณธ๊ฐ’, 2019 ๋…„ 8 ์›” 13 ์ผ, 20:35:49)
[GCC 7.3.0]

00 - Bug numpy.lib

๊ฐ€์žฅ ์œ ์šฉํ•œ ๋Œ“๊ธ€

๋ฒ„๊ทธ ์‹ ๊ณ ์— ๊ฐ์‚ฌ๋“œ๋ฆฝ๋‹ˆ๋‹ค. ์ด ๋ฒ„๊ทธ๊ฐ€ ๋งˆ์Šคํ„ฐ ๋ธŒ๋žœ์น˜์—๋„ ์žˆ์Œ์„ ํ™•์ธํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

NumPy์™€๋Š” DEV๋“ค : ๋ฌธ์ œ๋Š”, ๋‚ด๋ถ€ ๊ธฐ๋Šฅ์ด ์žˆ๋‹ค๋Š” _hist_bin_sturges ์—์„œ histograms.py ์žˆ์–ด์„œ ์‚ฌ์šฉํ•˜๋Š”, ptp ์–ด๋ ˆ์ด์˜ ์ตœ๋Œ€ ๊ฐ’๊ณผ ์ตœ์†Œ๊ฐ’๊ณผ์˜ ์ฐจ์ด๋ฅผ ๊ณ„์‚ฐํ•˜๊ธฐ๋ฅผ dtype int16 . ์ด ๊ฒฝ์šฐ ์ตœ๋Œ€ ๊ฐ’์€ 32767์ด๊ณ  ์ตœ์†Œ๊ฐ’์€ -16์ด๋ฏ€๋กœ ์ฐจ์ด๋Š” 32783์ด๋˜์–ด์•ผํ•ฉ๋‹ˆ๋‹ค.ํ•˜์ง€๋งŒ ptp ๋Š” ๋ฐฐ์—ด๊ณผ ๋™์ผํ•œ ์œ ํ˜•์˜ ๊ฐ’์„ ๋ฐ˜ํ™˜ํ•˜๋ฏ€๋กœ -32753์„ ๋ฐ˜ํ™˜ํ•ฉ๋‹ˆ๋‹ค. ์ž˜๋ชป๋œ ๊ณ„์‚ฐ.

x.ptp() ๋ฅผ x.max().item() - x.min().item() ์™€ ๊ฐ™์€ ๊ฒƒ์œผ๋กœ ๋ฐ”๊พธ๋ฉด ๋ฌธ์ œ๋ฅผ ํ•ด๊ฒฐํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

๋ชจ๋“  4 ๋Œ“๊ธ€

ํฅ๋ฏธ๋กญ๊ฒŒ๋„์ด ๋ฐ์ดํ„ฐ ์„ธํŠธ๋ฅผ float๋กœ ๋ณ€ํ™˜ํ•˜๋ฉด ํžˆ์Šคํ† ๊ทธ๋žจ์ด ๋ฌธ์ œ์—†์ด ๋นŒ๋“œ๋ฉ๋‹ˆ๋‹ค.

๋ฒ„๊ทธ ์‹ ๊ณ ์— ๊ฐ์‚ฌ๋“œ๋ฆฝ๋‹ˆ๋‹ค. ์ด ๋ฒ„๊ทธ๊ฐ€ ๋งˆ์Šคํ„ฐ ๋ธŒ๋žœ์น˜์—๋„ ์žˆ์Œ์„ ํ™•์ธํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

NumPy์™€๋Š” DEV๋“ค : ๋ฌธ์ œ๋Š”, ๋‚ด๋ถ€ ๊ธฐ๋Šฅ์ด ์žˆ๋‹ค๋Š” _hist_bin_sturges ์—์„œ histograms.py ์žˆ์–ด์„œ ์‚ฌ์šฉํ•˜๋Š”, ptp ์–ด๋ ˆ์ด์˜ ์ตœ๋Œ€ ๊ฐ’๊ณผ ์ตœ์†Œ๊ฐ’๊ณผ์˜ ์ฐจ์ด๋ฅผ ๊ณ„์‚ฐํ•˜๊ธฐ๋ฅผ dtype int16 . ์ด ๊ฒฝ์šฐ ์ตœ๋Œ€ ๊ฐ’์€ 32767์ด๊ณ  ์ตœ์†Œ๊ฐ’์€ -16์ด๋ฏ€๋กœ ์ฐจ์ด๋Š” 32783์ด๋˜์–ด์•ผํ•ฉ๋‹ˆ๋‹ค.ํ•˜์ง€๋งŒ ptp ๋Š” ๋ฐฐ์—ด๊ณผ ๋™์ผํ•œ ์œ ํ˜•์˜ ๊ฐ’์„ ๋ฐ˜ํ™˜ํ•˜๋ฏ€๋กœ -32753์„ ๋ฐ˜ํ™˜ํ•ฉ๋‹ˆ๋‹ค. ์ž˜๋ชป๋œ ๊ณ„์‚ฐ.

x.ptp() ๋ฅผ x.max().item() - x.min().item() ์™€ ๊ฐ™์€ ๊ฒƒ์œผ๋กœ ๋ฐ”๊พธ๋ฉด ๋ฌธ์ œ๋ฅผ ํ•ด๊ฒฐํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

๋Œ€๋ถ€๋ถ„์˜ ๋‹ค๋ฅธ Bin ์ถ”์ •์น˜๋Š” x.ptp() ์™€ ๋™์ผํ•œ ๋ฌธ์ œ๋ฅผ ๊ฐ€์ง€๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค.

๊ฐ€๋Šฅํ•œ ์ˆ˜์ • ์‚ฌํ•ญ์€ https://github.com/numpy/numpy/pull/14381์— ์žˆ์Šต๋‹ˆ๋‹ค.

์ด ํŽ˜์ด์ง€๊ฐ€ ๋„์›€์ด ๋˜์—ˆ๋‚˜์š”?
0 / 5 - 0 ๋“ฑ๊ธ‰