ใ€NumPyๅ…ฅ้–€ใ€‘ใ‚ˆใไฝฟใ†ๆฉŸ่ƒฝไธ€่ฆง

Pythonใฎๆ•ฐๅ€ค่จˆ็ฎ—ใƒฉใ‚คใƒ–ใƒฉใƒชNumPyใงใ‚ˆใไฝฟใ†ๆฉŸ่ƒฝ๏ผˆ้–ขๆ•ฐใƒปใƒกใ‚ฝใƒƒใƒ‰ใƒป็ฎ—่ก“ๆผ”็ฎ—ๅญใชใฉ๏ผ‰ใ‚’ไธ€่ฆงใซใ—ใฆใพใจใ‚ใฆใฟใพใ—ใŸใ€‚

้…ๅˆ—ใฎ็”Ÿๆˆ

NumPy้…ๅˆ—ใฎ็”Ÿๆˆใซ้–ขใ™ใ‚‹ไธปใชๆฉŸ่ƒฝใฏๆฌกใฎ้€šใ‚Šใงใ™ใ€‚

่จ˜่ฟฐไพ‹ ๆฉŸ่ƒฝใฎ่ชฌๆ˜Ž
1ๆฌกๅ…ƒ้…ๅˆ— x = numpy.array([1, 2, 3]) 1ๆฌกๅ…ƒ้…ๅˆ—xใ‚’็”Ÿๆˆใ—ใพใ™ใ€‚๏ผˆarrayๅž‹๏ผ‰
2ๆฌกๅ…ƒ้…ๅˆ— X = numpy.array([[1,2,3],[4,5,6]]) 2ๆฌกๅ…ƒ้…ๅˆ—Xใ‚’็”Ÿๆˆใ—ใพใ™ใ€‚๏ผˆarrayๅž‹๏ผ‰
1ๆฌกๅ…ƒ่กŒๅˆ— x = numpy.matrix([1, 2, 3]) 1ๆฌกๅ…ƒ่กŒๅˆ—xใ‚’็”Ÿๆˆใ—ใพใ™ใ€‚๏ผˆmatrixๅž‹๏ผ‰
2ๆฌกๅ…ƒ่กŒๅˆ— X = numpy.matrix([[1,2,3],[4,5,6]]) 2ๆฌกๅ…ƒ่กŒๅˆ—Xใ‚’็”Ÿๆˆใ—ใพใ™ใ€‚๏ผˆmatrixๅž‹๏ผ‰
็ฉบ้…ๅˆ— X = numpy.empty([m, n]) ใ‚ตใ‚คใ‚บใŒmร—nใง็ฉบใฎ้…ๅˆ—Xใ‚’็”Ÿๆˆใ—ใพใ™ใ€‚๏ผˆใƒกใƒขใƒช้ ˜ๅŸŸใฎ็ขบไฟใฎใฟ่กŒใ„ใ€่ฆ็ด ใฎๅˆๆœŸๅŒ–ใฏใ—ใชใ„ใฎใง้ซ˜้€Ÿใซ้…ๅˆ—ใ‚’็”Ÿๆˆใ—ใพใ™๏ผ‰
ๅ…จ่ฆ็ด ใŒ1โ‘  X = numpy.ones((m, n)) ใ‚ตใ‚คใ‚บใŒmร—nใงๅ…จใฆใฎ่ฆ็ด ใŒ1ใฎ้…ๅˆ—Xใ‚’็”Ÿๆˆใ—ใพใ™ใ€‚
ๅ…จ่ฆ็ด ใŒ1โ‘ก X = numpy.ones_like(B) ้…ๅˆ—BใจๅŒใ˜ใ‚ตใ‚คใ‚บใงๅ…จใฆใฎ่ฆ็ด ใŒ1ใฎ้…ๅˆ—Xใ‚’็”Ÿๆˆใ—ใพใ™ใ€‚
้›ถ่กŒๅˆ—โ‘  X = numpy.zeros((m, n)) ใ‚ตใ‚คใ‚บใŒmร—nใงๅ…จใฆใฎ่ฆ็ด ใŒ0ใฎ้…ๅˆ—Xใ‚’็”Ÿๆˆใ—ใพใ™ใ€‚
้›ถ่กŒๅˆ—โ‘ก Y = numpy.zeros_like(X) ้…ๅˆ—XใจๅŒใ˜ใ‚ตใ‚คใ‚บใงๅ…จใฆใฎ่ฆ็ด ใŒ0ใฎ้…ๅˆ—Yใ‚’็”Ÿๆˆใ—ใพใ™ใ€‚
ๅ…จ่ฆ็ด ใŒ1ใคใฎๅ€ค X = numpy.full([m, n], value) ใ‚ตใ‚คใ‚บใŒmร—nใงๅ…จใฆใฎ่ฆ็ด ใŒvalueใฎ้…ๅˆ—Aใ‚’็”Ÿๆˆใ—ใพใ™ใ€‚
ๅ˜ไฝ่กŒๅˆ— X = numpy.eye(m) ใ‚ตใ‚คใ‚บใŒmร—mใฎ้…ๅˆ—X๏ผˆๅ˜ไฝ่กŒๅˆ—๏ผ‰ใ‚’็”Ÿๆˆใ—ใพใ™ใ€‚
ไธ‰่ง’่กŒๅˆ— X = numpy.tri(m) ใ‚ตใ‚คใ‚บใŒmร—mใฎ้…ๅˆ—X๏ผˆไธ‰่ง’่กŒๅˆ—๏ผ‰ใ‚’็”Ÿๆˆใ—ใพใ™ใ€‚
็นฐใ‚Š่ฟ”ใ—โ‘  x = numpy.repeat([1, 2, 3], n) [1, 2, 3]ใ‚’nๅ›ž็นฐใ‚Š่ฟ”ใ—ใŸ้…ๅˆ—xใ‚’็”Ÿๆˆใ—ใพใ™ใ€‚
็นฐใ‚Š่ฟ”ใ—โ‘ก x = numpy.tile([1, 2, 3], n) [1, 2, 3]ใ‚’nๅ›ž็นฐใ‚Š่ฟ”ใ—ใŸ้…ๅˆ—xใ‚’็”Ÿๆˆใ—ใพใ™ใ€‚
็ฏ„ๅ›ฒใƒป้–“้š”ใ‚’ๆŒ‡ๅฎš x = numpy.arange(a0, an, d) ๅŒบ้–“[a0, an)ใ€้–“้š”dใฎใƒ‡ใƒผใ‚ฟใ‚’่ฆ็ด ใซใ‚‚ใค้…ๅˆ—xใ‚’็”Ÿๆˆใ—ใพใ™ใ€‚
็ฏ„ๅ›ฒใƒป่ฆ็ด ๆ•ฐใ‚’ๆŒ‡ๅฎš x = numpy.linspace(a0, an, n) ๅŒบ้–“[a0, an)ใ€่ฆ็ด ๆ•ฐnใฎ้…ๅˆ—xใ‚’็”Ÿๆˆใ—ใพใ™ใ€‚
ๅฏพๆ•ฐใ‚นใ‚ฑใƒผใƒซ x = numpy.logspace(a0, an , n, base=b) ๅŒบ้–“[a0, an)ใ€่ฆ็ด ๆ•ฐnใงๅฏพๆ•ฐใ‚นใ‚ฑใƒผใƒซ(ๅบ•ใฏb)ใงไธฆในใ‚‰ใ‚ŒใŸ้…ๅˆ—xใ‚’็”Ÿๆˆใ—ใพใ™ใ€‚
ๆ ผๅญ็Šถ้…ๅˆ— X = numpy.meshgrid(x, y) ็ธฆๆจชใซ็ญ‰้–“้š”ใชๆ ผๅญ็Šถ้…ๅˆ—Xใ‚’็”Ÿๆˆใ—ใพใ™ใ€‚

ไนฑๆ•ฐ้…ๅˆ—ใฎ็”Ÿๆˆ

ไนฑๆ•ฐ้…ๅˆ—ใฎ็”Ÿๆˆใซ้–ขใ™ใ‚‹ไธปใชๆฉŸ่ƒฝใฏๆฌกใฎ้€šใ‚Šใงใ™ใ€‚

่จ˜่ฟฐไพ‹ ๆฉŸ่ƒฝใฎ่ชฌๆ˜Ž
ไธ€ๆง˜ไนฑๆ•ฐ(ๆ•ดๆ•ฐ)โ‘  x = numpy.random.randint(a0, an, n) ๅŒบ้–“[a0, an)ใงใ‚ตใƒณใƒ—ใƒซๆ•ฐnใฎไธ€ๆง˜ไนฑๆ•ฐ้…ๅˆ—xใ‚’็”Ÿๆˆใ—ใพใ™ใ€‚๏ผˆๅ€คใฏๆ•ดๆ•ฐ๏ผ‰
ไธ€ๆง˜ไนฑๆ•ฐ(ๆ•ดๆ•ฐ)โ‘ก X = numpy.random.randint(a0, an, (m,n)) ๅŒบ้–“[a0, an) ใ€ใ‚ตใƒณใƒ—ใƒซๆ•ฐnใ€ใ‚ตใ‚คใ‚บใŒmร—nใฎไธ€ๆง˜ไนฑๆ•ฐ้…ๅˆ—Xใ‚’็”Ÿๆˆใ—ใพใ™ใ€‚
ไธ€ๆง˜ไนฑๆ•ฐ๏ผˆๅฎŸๆ•ฐ๏ผ‰โ‘  x = numpy.random.rand(n) ๅŒบ้–“[0.0, 1.0)ใ€ใ‚ตใƒณใƒ—ใƒซๆ•ฐnใฎไธ€ๆง˜ไนฑๆ•ฐ้…ๅˆ—xใ‚’็”Ÿๆˆใ—ใพใ™ใ€‚๏ผˆๅ€คใฏๅฎŸๆ•ฐ๏ผ‰
ไธ€ๆง˜ไนฑๆ•ฐ๏ผˆๅฎŸๆ•ฐ๏ผ‰โ‘ก X = numpy.random.rand(n) ๅŒบ้–“[0.0, 1.0)ใ€ใ‚ตใƒณใƒ—ใƒซๆ•ฐnใ€ใ‚ตใ‚คใ‚บใŒmร—nใฎไธ€ๆง˜ไนฑๆ•ฐ้…ๅˆ—xใ‚’็”Ÿๆˆใ—ใพใ™ใ€‚
ๆญฃ่ฆๅˆ†ๅธƒ x = numpy.random.normal(mu, sigma, n) ๅนณๅ‡ๅ€คmuใ€ๆจ™ๆบ–ๅๅทฎsigmaใ€ใ‚ตใƒณใƒ—ใƒซๆ•ฐnใฎๆญฃ่ฆๅˆ†ๅธƒใซๅพ“ใ†ไนฑๆ•ฐ้…ๅˆ—xใ‚’็”Ÿๆˆใ—ใพใ™ใ€‚
ๆจ™ๆบ–ๆญฃ่ฆๅˆ†ๅธƒ x = nnmpy.random.randn(n) ใ‚ตใƒณใƒ—ใƒซๆ•ฐnใฎๆญฃ่ฆๅˆ†ๅธƒ(ๅนณๅ‡ๅ€ค0ใ€ๆจ™ๆบ–ๅๅทฎ1)ใซๅพ“ใ†ไนฑๆ•ฐ้…ๅˆ—xใ‚’็”Ÿๆˆใ—ใพใ™ใ€‚
ไบŒ้ …ๅˆ†ๅธƒ x = numpy.random.binomial(t, p, n) ่ฉฆ่กŒๅ›žๆ•ฐtใ€็ขบ็އpใ€ใ‚ตใƒณใƒ—ใƒซๆ•ฐnใฎไบŒ้ …ๅˆ†ๅธƒใซๅพ“ใ†ไนฑๆ•ฐ้…ๅˆ—xใ‚’็”Ÿๆˆใ—ใพใ™ใ€‚
ใƒใ‚ขใ‚ฝใƒณๅˆ†ๅธƒ x = numpy.random.binomial(lam, n) ่ฉฆ่กŒๅ›žๆ•ฐlamใ€ใ‚ตใƒณใƒ—ใƒซๆ•ฐnใฎใƒใ‚ขใ‚ฝใƒณๅˆ†ๅธƒใซๅพ“ใ†ไนฑๆ•ฐ้…ๅˆ—xใ‚’็”Ÿๆˆใ—ใพใ™ใ€‚
ใƒ™ใƒผใ‚ฟๅˆ†ๅธƒ x = numpy.random.beta(a,b,n) ใƒ‘ใƒฉใƒกใƒผใ‚ฟa, bใ€ใ‚ตใƒณใƒ—ใƒซๆ•ฐnใฎใƒ™ใƒผใ‚ฟๅˆ†ๅธƒใซๅพ“ใ†ไนฑๆ•ฐ้…ๅˆ—xใ‚’็”Ÿๆˆใ—ใพใ™ใ€‚
ฯ‡ๅˆ†ๅธƒ x = numpy.random.chisquare(df, n) ่‡ช็”ฑๅบฆdfใ€ใ‚ตใƒณใƒ—ใƒซๆ•ฐnใฎใ‚ซใ‚คไบŒไน—ๅˆ†ๅธƒใซๅพ“ใ†ไนฑๆ•ฐ้…ๅˆ—xใ‚’็”Ÿๆˆใ—ใพใ™ใ€‚
ใ‚ฌใƒณใƒžๅˆ†ๅธƒ x =numpy.random.gamma(p,sigma,10) ็ขบ็އpใ€ๆจ™ๆบ–ๅๅทฎsigmaใ€ใ‚ตใƒณใƒ—ใƒซๆ•ฐnใฎใ‚ฌใƒณใƒžๅˆ†ๅธƒใซๅพ“ใ†ไนฑๆ•ฐ้…ๅˆ—xใ‚’็”Ÿๆˆใ—ใพใ™ใ€‚
Fๅˆ†ๅธƒ x = numpy.random.f(num, den, n) ๅˆ†ๅญใฎ่‡ช็”ฑๅบฆnumใ€ๅˆ†ๆฏใฎ่‡ช็”ฑๅบฆdenใ€ใ‚ตใƒณใƒ—ใƒซๆ•ฐnใฎFๅˆ†ๅธƒใซๅพ“ใ†ไนฑๆ•ฐ้…ๅˆ—xใ‚’็”Ÿๆˆใ—ใพใ™ใ€‚

็ฎ—่ก“ๆผ”็ฎ—ๅญ

้…ๅˆ—ใฎ็ฎ—่ก“ๆผ”็ฎ—ๅญใซ้–ขใ™ใ‚‹ไธปใชๆฉŸ่ƒฝใฏๆฌกใฎ้€šใ‚Šใงใ™ใ€‚

่จ˜่ฟฐไพ‹ ๆฉŸ่ƒฝใฎ่ชฌๆ˜Ž
ๅŠ ็ฎ— z = x + y ้…ๅˆ—x, yใฎ่ฆ็ด ๅŒๅฃซใ‚’ๅŠ ็ฎ—ใ—ใพใ™ใ€‚
ๆธ›็ฎ— z = x – y ้…ๅˆ—x, yใฎ่ฆ็ด ๅŒๅฃซใ‚’ๆธ›็ฎ—ใ—ใพใ™ใ€‚
ไน—็ฎ— z = x * y ้…ๅˆ—x, yใฎ่ฆ็ด ๅŒๅฃซใ‚’ไน—็ฎ—ใ—ใพใ™ใ€‚๏ผˆmatrixๅž‹ใฎ่กŒๅˆ—ใฎๅ ดๅˆใฏๅ†…็ฉใ‚’ๆฑ‚ใ‚ใพใ™๏ผ‰
้™ค็ฎ— z = x / y ้…ๅˆ—x, yใฎ่ฆ็ด ๅŒๅฃซใ‚’้™ค็ฎ—ใ—ใพใ™ใ€‚
ๅ‰ฐไฝ™ z = x % y ้…ๅˆ—x, yใฎ่ฆ็ด ๅŒๅฃซใ‚’้™ค็ฎ—ใ—ใŸๆ™‚ใฎๅ‰ฐไฝ™ใ‚’ๆฑ‚ใ‚ใพใ™ใ€‚
ๅ†ชไน— y = x ** a ้…ๅˆ—xใฎ่ฆ็ด ใ‚’aไน—ใ—ใพใ™ใ€‚
็ฌฆๅทๅ่ปข y = -x ้…ๅˆ—xใฎ่ฆ็ด ใฎ็ฌฆๅทใ‚’ๅ่ปขใ—ใพใ™ใ€‚

้…ๅˆ—ๆ“ไฝœ

ใ€Œ้…ๅˆ—ใฎๆ“ไฝœใ€ใซ้–ขใ™ใ‚‹ไธปใชๆฉŸ่ƒฝใฏๆฌกใฎ้€šใ‚Šใงใ™ใ€‚

่จ˜่ฟฐไพ‹ ๆฉŸ่ƒฝใฎ่ชฌๆ˜Ž
ๅ…ˆ้ ญใฎ่ฆ็ด ใธไปฃๅ…ฅ x[0] = value 1ๆฌกๅ…ƒ้…ๅˆ—xใซใŠใ‘ใ‚‹ๅ…ˆ้ ญใฎ่ฆ็ด ใซๅ€คใ‚’ไปฃๅ…ฅใ—ใพใ™ใ€‚
i็•ช็›ฎใฎ่ฆ็ด ใธไปฃๅ…ฅ x[i] = value 1ๆฌกๅ…ƒ้…ๅˆ—xใซใŠใ‘ใ‚‹i็•ช็›ฎใฎ่ฆ็ด ใซๅ€คใ‚’ไปฃๅ…ฅใ—ใพใ™ใ€‚(ๅ…ˆ้ ญใฏ0็•ช็›ฎ)
ๆœซๅฐพใฎ่ฆ็ด ใธไปฃๅ…ฅ x[-1] = value 1ๆฌกๅ…ƒ้…ๅˆ—xใซใŠใ‘ใ‚‹ๆœซๅฐพใฎ่ฆ็ด ใซๅ€คใ‚’ไปฃๅ…ฅใ—ใพใ™ใ€‚
i๏ฝžj-1็•ช็›ฎใฎ่ฆ็ด ใธไปฃๅ…ฅ x[i:j] = value 1ๆฌกๅ…ƒ้…ๅˆ—xใซใŠใ‘ใ‚‹i็•ช็›ฎใ‹ใ‚‰j-1็•ช็›ฎใพใงใฎ่ฆ็ด ใซๅ€คใ‚’ไปฃๅ…ฅใ—ใพใ™ใ€‚
j่กŒ็›ฎใ€iๅˆ—็›ฎใฎ่ฆ็ด ใธไปฃๅ…ฅโ‘  X[j][i] = value 2ๆฌกๅ…ƒ้…ๅˆ—XใซใŠใ‘ใ‚‹j่กŒ็›ฎใ€iๅˆ—็›ฎใซใ‚ใ‚‹่ฆ็ด ใซๅ€คใ‚’ไปฃๅ…ฅใ—ใพใ™ใ€‚๏ผˆ0็•ช็›ฎใ‹ใ‚‰้–‹ๅง‹๏ผ‰
j่กŒ็›ฎใ€iๅˆ—็›ฎใฎ่ฆ็ด ใธไปฃๅ…ฅโ‘ก X[j, i] = value 2ๆฌกๅ…ƒ้…ๅˆ—XใซใŠใ‘ใ‚‹j่กŒ็›ฎใ€iๅˆ—็›ฎใซใ‚ใ‚‹่ฆ็ด ใซๅ€คใ‚’ไปฃๅ…ฅใ—ใพใ™ใ€‚๏ผˆไธŠใฎ็œ็•ฅๅฝข๏ผ‰
ๆŒ‡ๅฎš้ ˜ๅŸŸใฎ่ฆ็ด ใธไปฃๅ…ฅ X[j:j+h, i:i+w] = value 2ๆฌกๅ…ƒ้…ๅˆ—XใซใŠใ‘ใ‚‹jใ‹ใ‚‰j+h่กŒ็›ฎใ€iใ‹ใ‚‰i+wๅˆ—็›ฎใซใ‚ใ‚‹่ฆ็ด ใซๅ€คใ‚’ไปฃๅ…ฅใ—ใพใ™ใ€‚
้…ๅˆ—ใฎใ‚ณใƒ”ใƒผ y = x.copy() ้…ๅˆ—xใ‚’ใ‚ณใƒ”ใƒผใ—ใŸๆ–ฐใŸใช้…ๅˆ—yใ‚’็”Ÿๆˆใ—ใพใ™ใ€‚
ๆœซๅฐพใซ่ฆ็ด ่ฟฝๅŠ  z = numpy.append(x, y) ้…ๅˆ—xใฎๆœซๅฐพใซ้…ๅˆ—yใฎ่ฆ็ด ใ‚’่ฟฝๅŠ ใ—ใŸๆ–ฐใ—ใ„้…ๅˆ—zใ‚’็”Ÿๆˆใ—ใพใ™ใ€‚
ๆฌกๅ…ƒๆ•ฐใฎๅค‰ๆ›ด X = x.reshape(m, n) 1ๆฌกๅ…ƒ้…ๅˆ—xใ‚’2ๆฌกๅ…ƒ้…ๅˆ—X๏ผˆใ‚ตใ‚คใ‚บใฏmร—n๏ผ‰ใซๅค‰ๆ›ใ—ใพใ™ใ€‚
ใƒ‡ใƒผใ‚ฟๅž‹ใฎๅค‰ๆ›ด y = x.astype(dtype) ้…ๅˆ—xใฎใƒ‡ใƒผใ‚ฟๅž‹ใ‚’dtypeใซๅค‰ๆ›ใ—ใŸๆ–ฐใŸใช้…ๅˆ—yใ‚’็”Ÿๆˆใ—ใพใ™ใ€‚
ๆ›ธใๆ›ใˆ็ฆๆญข x.flags.writeable = False ้…ๅˆ—xใฎ่ฆ็ด ใ‚’ๆ›ธใๆ›ใˆ็ฆๆญขใซใ—ใพใ™ใ€‚
้…ๅˆ—ใฎ็ตๅˆ(็ธฆ) Z = numpy.vstack([X, Y]) ้…ๅˆ—X, Yใ‚’็ธฆๆ–นๅ‘ใซ็ตๅˆใ—ใพใ™ใ€‚
้…ๅˆ—ใฎ็ตๅˆ(ๆจช) Z = numpy.hstack([X, Y]) ้…ๅˆ—X, Yใ‚’ๆจชๆ–นๅ‘ใซ็ตๅˆใ—ใพใ™ใ€‚
้…ๅˆ—ใฎๅˆ†ๅ‰ฒ(็ธฆ) Y = numpy.vsplit(X, n) ้…ๅˆ—Xใ‚’็ธฆๆ–นๅ‘ใซnๅ€‹ใซๅˆ†ๅ‰ฒใ—ใพใ™ใ€‚
้…ๅˆ—ใฎๅˆ†ๅ‰ฒ(ๆจช) Y = numpy.hsplit(X, n) ้…ๅˆ—Xใ‚’ๆจชๆ–นๅ‘ใซnๅ€‹ใซๅˆ†ๅ‰ฒใ—ใพใ™ใ€‚
้…ๅˆ—ใฎๆฏ”่ผƒ๏ผˆๅฎŒๅ…จไธ€่‡ด๏ผ‰ z = numpy.allclose(x, y) ้…ๅˆ—x, yใฎ่ฆ็ด ใŒๅฎŒๅ…จใซไธ€่‡ดใ™ใ‚‹ใ‹่ชฟในใพใ™ใ€‚
ใ‚คใƒณใƒ‡ใƒƒใ‚ฏใ‚นใฎ็งปๅ‹• y = numpy.roll(x, n) ้…ๅˆ—xใฎ่ฆ็ด ใ‚’ๅทฆๅณใซnๅ€‹ๅˆ†ใ ใ‘็งปๅ‹•ใ—ใพใ™ใ€‚
้…ๅˆ—ใ‚’ใƒชใ‚นใƒˆใซๅค‰ๆ› list=x.tolist() ้…ๅˆ—xใ‚’ใƒชใ‚นใƒˆlistใซๅค‰ๆ›ใ—ใพใ™ใ€‚

ใƒ‡ใƒผใ‚ฟๆŠฝๅ‡บ

ใ€Œใƒ‡ใƒผใ‚ฟๆŠฝๅ‡บใ€ใซ้–ขใ™ใ‚‹ไธปใชๆฉŸ่ƒฝใฏๆฌกใฎ้€šใ‚Šใงใ™ใ€‚

่จ˜่ฟฐไพ‹ ๆฉŸ่ƒฝใฎ่ชฌๆ˜Ž
ๆฌกๅ…ƒๆ•ฐ dim = X.ndim ้…ๅˆ—Xใฎๆฌกๅ…ƒๆ•ฐใ‚’ๅ–ๅพ—ใ—ใพใ™ใ€‚
่ฆ็ด ๆ•ฐโ‘  shape = X.shape ้…ๅˆ—Xใฎๅ„ๆฌกๅ…ƒใฎ่ฆ็ด ๆ•ฐใ‚’ๅ–ๅพ—ใ—ใพใ™ใ€‚
่ฆ็ด ๆ•ฐโ‘ก size = A.size ้…ๅˆ—Aใฎ่ฆ็ด ๆ•ฐใ‚’ๅ–ๅพ—ใ—ใพใ™ใ€‚
ใƒใ‚คใƒˆๆ•ฐโ‘  byteX = X.nbytes ้…ๅˆ—Xใฎใƒใ‚คใƒˆๆ•ฐใ‚’ๅ–ๅพ—ใ—ใพใ™ใ€‚
ใƒใ‚คใƒˆๆ•ฐโ‘ก byte = X.itemsize ้…ๅˆ—Xใฎ1่ฆ็ด ใ‚ใŸใ‚Šใฎใƒใ‚คใƒˆๆ•ฐใ‚’ๅ–ๅพ—ใ—ใพใ™ใ€‚
ใƒ‡ใƒผใ‚ฟๅž‹ type = X.dtype ้…ๅˆ—Xใฎใƒ‡ใƒผใ‚ฟๅž‹ใ‚’ๅ–ๅพ—ใ—ใพใ™ใ€‚
ๅ…ˆ้ ญใฎ่ฆ็ด  a = x[0] 1ๆฌกๅ…ƒ้…ๅˆ—xใซใŠใ‘ๅ…ˆ้ ญใฎ่ฆ็ด ใ‚’ๅ–ๅพ—ใ—ใพใ™ใ€‚
i็•ช็›ฎใฎ่ฆ็ด  a = x[i] 1ๆฌกๅ…ƒ้…ๅˆ—xใซใŠใ‘ใ‚‹i็•ช็›ฎใฎ่ฆ็ด ใ‚’ๅ–ๅพ—ใ—ใพใ™ใ€‚(ๅ…ˆ้ ญใฏ0็•ช็›ฎ)
ๆœซๅฐพใฎ่ฆ็ด  a = x[-1] 1ๆฌกๅ…ƒ้…ๅˆ—xใซใŠใ‘ใ‚‹ๆœซๅฐพใฎ่ฆ็ด ใ‚’ๅ–ๅพ—ใ—ใพใ™ใ€‚
i๏ฝžj-1็•ช็›ฎใฎ่ฆ็ด  a = x[i:j] 1ๆฌกๅ…ƒ้…ๅˆ—xใซใŠใ‘ใ‚‹i็•ช็›ฎใ‹ใ‚‰j-1็•ช็›ฎใพใงใฎ่ฆ็ด ใ‚’ๅ–ๅพ—ใ—ใพใ™ใ€‚
j่กŒ็›ฎ, iๅˆ—็›ฎใฎ่ฆ็ด โ‘  a = X[j][i] 2ๆฌกๅ…ƒ้…ๅˆ—XใซใŠใ‘ใ‚‹j่กŒ็›ฎใ€iๅˆ—็›ฎใซใ‚ใ‚‹่ฆ็ด ใ‚’ๅ‚็…งใ—ใพใ™ใ€‚๏ผˆ0็•ช็›ฎใ‹ใ‚‰้–‹ๅง‹๏ผ‰
j่กŒ็›ฎ, iๅˆ—็›ฎใฎ่ฆ็ด โ‘ก a = X[j, i] 2ๆฌกๅ…ƒ้…ๅˆ—XใซใŠใ‘ใ‚‹j่กŒ็›ฎใ€iๅˆ—็›ฎใซใ‚ใ‚‹่ฆ็ด ใ‚’ๅ‚็…งใ—ใพใ™ใ€‚
ๆŒ‡ๅฎš้ ˜ๅŸŸใฎ่ฆ็ด  a = X[j:j+h, i:i+w] 2ๆฌกๅ…ƒ้…ๅˆ—XใซใŠใ‘ใ‚‹jใ‹ใ‚‰j+h่กŒ็›ฎใ€iใ‹ใ‚‰i+wๅˆ—็›ฎใซใ‚ใ‚‹่ฆ็ด ใ‚’ๅ‚็…งใ—ใพใ™ใ€‚
่กŒใฎ่ฆ็ด  a = X[j, :] 2ๆฌกๅ…ƒ้…ๅˆ—XใซใŠใ‘ใ‚‹j่กŒ็›ฎใซใ‚ใ‚‹ๅ…จใฆใฎ่ฆ็ด ใ‚’ๅ–ๅพ—ใ—ใพใ™ใ€‚
ๅˆ—ใฎ่ฆ็ด  a = X[:, i] 2ๆฌกๅ…ƒ้…ๅˆ—XใซใŠใ‘ใ‚‹iๅˆ—็›ฎใซใ‚ใ‚‹ๅ…จใฆใฎ่ฆ็ด ใ‚’ๅ–ๅพ—ใ—ใพใ™ใ€‚
่ค‡ๆ•ฐใฎๆกไปถใ‚’ๆบ€ใŸใ™่ฆ็ด  x = numpy.select(condlist, choicelist) ่ค‡ๆ•ฐใฎๆกไปถใ‚’ๆบ€ใŸใ™่ฆ็ด ใ‚’ๅ–ๅพ—ใ—ใพใ™ใ€‚
่กŒๅˆ—ใฎๅฏพ่ง’ๆˆๅˆ† a = numpy.diag(X) 2ๆฌกๅ…ƒ้…ๅˆ—Xใ‹ใ‚‰ๅฏพ่ง’ๆˆๅˆ†ใฎ่ฆ็ด ใ‚’ๅ–ๅพ—ใ—ใพใ™ใ€‚
ๆกไปถใ‚’ๆบ€ใŸใ™่ฆ็ด  a = x[ numpy.where(condition) ] ้…ๅˆ—xใ‹ใ‚‰ๆกไปถใ‚’ๆบ€ใŸใ™่ฆ็ด ใ‚’ๅ–ๅพ—ใ—ใพใ™ใ€‚
ใƒฉใƒณใƒ€ใƒ ๆŠฝๅ‡บโ‘  a = numpy.random.choice(a, n, replace=True) ้…ๅˆ—xใ‹ใ‚‰nๅ€‹ใฎ่ฆ็ด ใ‚’ใƒฉใƒณใƒ€ใƒ ใซๅ–ๅพ—ใ—ใพใ™ใ€‚๏ผˆreplaceใŒTrueใชใ‚‰้‡่ค‡ใ‚ใ‚Š)
ใƒฉใƒณใƒ€ใƒ ๆŠฝๅ‡บโ‘ก a = numpy.random.choice(x, n, p= [0.1, 0.9]) ้…ๅˆ—xใ‹ใ‚‰ๅ‡บ็พ็ขบ็އpใซๅŸบใ„ใฆnๅ€‹ใฎ่ฆ็ด ใ‚’ใƒฉใƒณใƒ€ใƒ ใซๅ–ๅพ—ใ—ใพใ™ใ€‚
ใ‚ทใƒฃใƒƒใƒ•ใƒซ x = numpy.random.shuffle(a) ้…ๅˆ—xใฎ่ฆ็ด ใฎ้ †ๅบใ‚’ใ‚ทใƒฃใƒƒใƒ•ใƒซใ—ใฆใ‹ใ‚‰ๅ–ๅพ—ใ—ใพใ™ใ€‚
่ฆ็ด ใฎใ‚คใƒณใƒ‡ใƒƒใ‚ฏใ‚น index = numpy.where(condition) ้…ๅˆ—ใ‹ใ‚‰ๆกไปถใ‚’ๆบ€ใŸใ™่ฆ็ด ใฎใ‚คใƒณใƒ‡ใƒƒใ‚ฏใ‚นใ‚’ๅ–ๅพ—ใ—ใพใ™ใ€‚
ๆœ€ๅฐๅ€ค่ฆ็ด ใฎใ‚คใƒณใƒ‡ใƒƒใ‚ฏใ‚น index = numpy.argmin(x) ้…ๅˆ—xใ‹ใ‚‰ๆœ€ๅฐๅ€ค่ฆ็ด ใฎใ‚คใƒณใƒ‡ใƒƒใ‚ฏใ‚นใ‚’ๅ–ๅพ—ใ—ใพใ™ใ€‚
ๆœ€ๅคงๅ€ค่ฆ็ด ใฎใ‚คใƒณใƒ‡ใƒƒใ‚ฏใ‚น index = numpy.argmax(x) ้…ๅˆ—xใ‹ใ‚‰ๆœ€ๅคงๅ€ค่ฆ็ด ใฎใ‚คใƒณใƒ‡ใƒƒใ‚ฏใ‚นใ‚’ๅ–ๅพ—ใ—ใพใ™ใ€‚
้ž0่ฆ็ด ใฎใ‚คใƒณใƒ‡ใƒƒใ‚ฏใ‚น index = numpy.nonzero(x) ้…ๅˆ—xใ‹ใ‚‰0ไปฅๅค–ใฎๅ€คใ‚’ใ‚‚ใค่ฆ็ด ใฎใ‚คใƒณใƒ‡ใƒƒใ‚ฏใ‚นใ‚’ๅ–ๅพ—ใ—ใพใ™ใ€‚
้ž0่ฆ็ด ๆ•ฐ n = numpy.count_nonzero(a) ้…ๅˆ—xใ‹ใ‚‰0ไปฅๅค–ใฎๅ€คใ‚’ใ‚‚ใค่ฆ็ด ๆ•ฐใ‚’ใ‚ซใ‚ฆใƒณใƒˆใ—ใพใ™ใ€‚
ๆกไปถใ‚’ๆบ€ใŸใ™่ฆ็ด ๆ•ฐ n = len(numpy.where(condition)[0]) ๆกไปถๅผใ‚’ๆบ€ใŸใ™่ฆ็ด ๆ•ฐใ‚’ใ‚ซใ‚ฆใƒณใƒˆใ—ใพใ™ใ€‚

ๆ•ฐๅญฆ้–ขๆ•ฐ

่จ˜่ฟฐไพ‹ ๆฉŸ่ƒฝใฎ่ชฌๆ˜Ž
ๆญฃๅผฆ้–ขๆ•ฐ y = numpy.sin(x) ๆญฃๅผฆ้–ขๆ•ฐsin(x)ใ‚’ๆฑ‚ใ‚ใพใ™ใ€‚(xใฏใƒฉใ‚ธใ‚ขใƒณ)
ไฝ™ๅผฆ้–ขๆ•ฐ y = numpy.cos(x) ไฝ™ๅผฆ้–ขๆ•ฐcos(x)ใ‚’ๆฑ‚ใ‚ใพใ™ใ€‚
ๆญฃๆŽฅ้–ขๆ•ฐ y = numpy.tan(x) ๆญฃๆŽฅ้–ขๆ•ฐtan(x)ใ‚’ๆฑ‚ใ‚ใพใ™ใ€‚
้€†ๆญฃๅผฆ้–ขๆ•ฐ y = numpy.arcsin(x) ้€†ๆญฃๅผฆ้–ขๆ•ฐarcsin(x)ใ‚’ๆฑ‚ใ‚ใพใ™ใ€‚
้€†ไฝ™ๅผฆ้–ขๆ•ฐ y = numpy.arccos(x) ้€†ไฝ™ๅผฆ้–ขๆ•ฐarccos(x)ใ‚’ๆฑ‚ใ‚ใพใ™ใ€‚
้€†ๆญฃๆŽฅ้–ขๆ•ฐ y = numpy.arctan(x) ้€†ๆญฃๆŽฅ้–ขๆ•ฐarctan(x)ใ‚’ๆฑ‚ใ‚ใพใ™ใ€‚
ใƒฉใ‚ธใ‚ขใƒณโ†’ๅบฆ deg = numpy.rad2deg(rad) ใƒฉใ‚ธใ‚ขใƒณ(rad)ใ‚’ๅบฆ(deg)ใซๅค‰ๆ›ใ™ใ‚‹ใ€‚
ๅบฆโ†’ใƒฉใ‚ธใ‚ขใƒณ rad = numpy.deg2rad(rad) ๅบฆ(deg)ใ‚’ใƒฉใ‚ธใ‚ขใƒณ(rad)ใซๅค‰ๆ›ใ™ใ‚‹ใ€‚
ๅนณๆ–นๆ น y = numpy.sqrt(x) ้…ๅˆ—xใฎๅนณๆ–นๆ นใ‚’ๆฑ‚ใ‚ใพใ™ใ€‚
็ซ‹ๆ–นๆ น y = numpy.cbrt(x) ้…ๅˆ—xใฎ็ซ‹ๆ–นๆ น๏ผˆไธ‰ไน—ๆ น๏ผ‰ใ‚’ๆฑ‚ใ‚ใพใ™ใ€‚
ไบŒไน— y = numpy.square(x) ้…ๅˆ—xใฎไบŒไน—ใ‚’ๆฑ‚ใ‚ใพใ™ใ€‚
็ตถๅฏพๅ€ค numpy.absolute(x) ้…ๅˆ—xใฎ็ตถๅฏพๅ€คใ‚’ๆฑ‚ใ‚ใพใ™ใ€‚
็ตถๅฏพๅ€ค๏ผˆ็œ็•ฅๅฝข๏ผ‰ numpy.abs(x) ้…ๅˆ—xใฎ็ตถๅฏพๅ€คใ‚’ๆฑ‚ใ‚ใพใ™ใ€‚
็ฌฆๅท้–ขๆ•ฐ numpy.sign(x) ้…ๅˆ—xใฎ็ฌฆๅทใ‚’ๆฑ‚ใ‚ใพใ™ใ€‚
ๆŒ‡ๆ•ฐ้–ขๆ•ฐ y=numpy.exp(x) ๆŒ‡ๆ•ฐ้–ขๆ•ฐe^xใ‚’ๆฑ‚ใ‚ใพใ™ใ€‚
ๅฏพๆ•ฐ้–ขๆ•ฐ๏ผˆๅบ•e๏ผ‰ y=numpy.log(x) ๅบ•ใŒeใฎๅฏพๆ•ฐ้–ขๆ•ฐlog_e(x)ใ‚’ๆฑ‚ใ‚ใพใ™ใ€‚
ๅฏพๆ•ฐ้–ขๆ•ฐ(ๅบ•10) y=numpy.log10(x) ๅบ•ใŒ10ใฎๅฏพๆ•ฐ้–ขๆ•ฐlog_{10}(x)ใ‚’ๆฑ‚ใ‚ใพใ™ใ€‚
ๅฏพๆ•ฐ้–ขๆ•ฐ(ๅบ•2) y=numpy.log2(x) ๅบ•ใŒ2ใฎๅฏพๆ•ฐ้–ขๆ•ฐlog_{10}(x)ใ‚’ๆฑ‚ใ‚ใพใ™ใ€‚
ๅ††ๅ‘จ็އ pi = numpy.pi ๅ††ๅ‘จ็އฯ€ใ‚’ๅ‘ผใณๅ‡บใ—ใพใ™ใ€‚
ใƒใ‚คใƒ”ใ‚ขๆ•ฐ e = numpy.e ใƒใ‚คใƒ”ใ‚ขๆ•ฐeใ‚’ๅ‘ผใณๅ‡บใ—ใพใ™ใ€‚
่ค‡็ด ๆ•ฐใฎๅˆๆœŸๅŒ– x = np.array([1+1j, 1+2j, 1+3j]) ่ค‡็ด ๆ•ฐใ‚’่ฆ็ด ใซใ‚‚ใค้…ๅˆ—xใ‚’็”Ÿๆˆใ—ใพใ™ใ€‚
ๅฎŸ้ƒจ numpy.real(x) ้…ๅˆ—xใ‹ใ‚‰ๅฎŸ้ƒจใฎใฟใ‚’ๅ–ใ‚Šๅ‡บใ—ใพใ™ใ€‚
่™š้ƒจ numpy.imag(x) ้…ๅˆ—xใ‹ใ‚‰่™š้ƒจใ‚’ๅ–ใ‚Šๅ‡บใ—ใพใ™ใ€‚
่ค‡็ด ๅ…ฑๅฝน numpy.conj(x) ้…ๅˆ—xใ‹ใ‚‰่ค‡็ด ๅ…ฑๅฝนใ‚’ๆฑ‚ใ‚ใพใ™ใ€‚
่กŒๆ–นๅ‘ใฎๅ’Œ y = numpy.sum(X, axis=1) 2ๆฌกๅ…ƒ้…ๅˆ—XใซใŠใ‘ใ‚‹่ฆ็ด ใฎ่กŒๆ–นๅ‘ใฎๅ’Œใ‚’ๆฑ‚ใ‚ใพใ™ใ€‚
ๅˆ—ๆ–นๅ‘ใฎๅ’Œ y = numpy.sum(X, axis=0) 2ๆฌกๅ…ƒ้…ๅˆ—XใซใŠใ‘ใ‚‹่ฆ็ด ใฎๅˆ—ๆ–นๅ‘ใฎๅ’Œใ‚’ๆฑ‚ใ‚ใพใ™ใ€‚
่กŒๆ–นๅ‘ใฎๅทฎ y = numpy.diff(X) 2ๆฌกๅ…ƒ้…ๅˆ—XใซใŠใ‘ใ‚‹่ฆ็ด ใฎ่กŒๆ–นๅ‘ใฎๅทฎๅˆ†ใ‚’ๆฑ‚ใ‚ใพใ™ใ€‚
ๅˆ—ๆ–นๅ‘ใฎๅทฎ y = numpy.diff(X, axis=0) 2ๆฌกๅ…ƒ้…ๅˆ—XใซใŠใ‘ใ‚‹่ฆ็ด ใฎๅˆ—ๆ–นๅ‘ใฎๅทฎๅˆ†ใ‚’ๆฑ‚ใ‚ใพใ™ใ€‚
่กŒๆ–นๅ‘ใฎ็ฉ y = numpy.prod(X, axis=1) 2ๆฌกๅ…ƒ้…ๅˆ—XใซใŠใ‘ใ‚‹่ฆ็ด ใฎ่กŒๆ–นๅ‘ใฎ็ฉใ‚’ๆฑ‚ใ‚ใพใ™ใ€‚
ๅˆ—ๆ–นๅ‘ใฎ็ฉ y = numpy.prod(X, axis=0) 2ๆฌกๅ…ƒ้…ๅˆ—XใซใŠใ‘ใ‚‹่ฆ็ด ใฎๅˆ—ๆ–นๅ‘ใฎ็ฉใ‚’ๆฑ‚ใ‚ใพใ™ใ€‚

็ตฑ่จˆ้‡

่จ˜่ฟฐไพ‹ ๆฉŸ่ƒฝใฎ่ชฌๆ˜Ž
ๅˆ่จˆ total = numpy.sum(x) ้…ๅˆ—xใฎ่ฆ็ด ใฎ็ทๅ’Œใ‚’ๆฑ‚ใ‚ใพใ™ใ€‚
ๅนณๅ‡ ave = numpy.average(x) ้…ๅˆ—xใฎ่ฆ็ด ใฎๅนณๅ‡ใ‚’ๆฑ‚ใ‚ใพใ™ใ€‚
ๅˆ†ๆ•ฃ var = numpy.var(x) ้…ๅˆ—xใฎ่ฆ็ด ใฎๅˆ†ๆ•ฃใ‚’ๆฑ‚ใ‚ใพใ™ใ€‚
ๆจ™ๆบ–ๅๅทฎ std = numpy.std(x) ้…ๅˆ—xใฎ่ฆ็ด ใฎๆจ™ๆบ–ๅๅทฎใ‚’ๆฑ‚ใ‚ใพใ™ใ€‚
ไธๅๅˆ†ๆ•ฃ dvar = numpy.var(x, ddof=1) ้…ๅˆ—xใฎ่ฆ็ด ใฎไธๅๅˆ†ๆ•ฃใ‚’ๆฑ‚ใ‚ใพใ™ใ€‚
ไธๅๆจ™ๆบ–ๅๅทฎ dstd = numpy.std(x, ddof=1) ้…ๅˆ—xใฎ่ฆ็ด ใฎไธๅๆจ™ๆบ–ๅๅทฎใ‚’ๆฑ‚ใ‚ใพใ™ใ€‚
ๅๅทฎๅ€ค y = numpy.round_(50+10*(x-numpy.average(x))/numpy.std(x)) ้…ๅˆ—xใฎ่ฆ็ด ใฎๅๅทฎๅ€คใ‚’ๆฑ‚ใ‚ใพใ™ใ€‚
ๆœ€ๅคงๅ€ค max = numpy.amax(x) ้…ๅˆ—xใฎ่ฆ็ด ใฎๆœ€ๅคงๅ€คใ‚’ๆฑ‚ใ‚ใพใ™ใ€‚
ๆœ€ๅฐๅ€ค min = numpy.amin(x) ้…ๅˆ—xใฎ่ฆ็ด ใฎๆœ€ๅฐๅ€คใ‚’ๆฑ‚ใ‚ใพใ™ใ€‚
ไธญๅคฎๅ€ค median = numpy.median(x) ้…ๅˆ—xใฎ่ฆ็ด ใฎไธญๅคฎๅ€คใ‚’ๆฑ‚ใ‚ใพใ™ใ€‚
็ฎ—่ก“ๅนณๅ‡ mean = numpy.mean(x) ้…ๅˆ—xใฎ่ฆ็ด ใฎ็ฎ—่ก“ๅนณๅ‡ใ‚’ๆฑ‚ใ‚ใพใ™ใ€‚
ๅทฎๅˆ† dx = numpy.diff(x) ้…ๅˆ—xใฎ่ฆ็ด ใฎๅทฎๅˆ†ใ‚’ๆฑ‚ใ‚ใพใ™ใ€‚
ๅ‹พ้… lx = numpy.gradient(x) ้…ๅˆ—xใฎ่ฆ็ด ใฎๅ‹พ้…๏ผˆๅ‚พใ๏ผ‰ใ‚’ๆฑ‚ใ‚ใพใ™ใ€‚
็›ธ้–ขไฟ‚ๆ•ฐ alpha = numpy.corrcoef(x, y)[0, 1] ้…ๅˆ—x, yใฎ็›ธ้–ขไฟ‚ๆ•ฐใ‚’ๆฑ‚ใ‚ใพใ™ใ€‚
ใƒ’ใ‚นใƒˆใ‚ฐใƒฉใƒ  hist = numpy.histogram(x) ้…ๅˆ—xใฎใƒ’ใ‚นใƒˆใ‚ฐใƒฉใƒ ใ‚’ๆฑ‚ใ‚ใพใ™ใ€‚

ๅ›žๅธฐๅˆ†ๆž

่จ˜่ฟฐไพ‹ ๆฉŸ่ƒฝใฎ่ชฌๆ˜Ž
ๅ˜ๅ›žๅธฐๅˆ†ๆž A = numpy.array([x,numpy.ones(len(x))])
a, b = numpy.linalg.lstsq(A.T, y)[0]
้…ๅˆ—x๏ผˆ่ชฌๆ˜Žๅค‰ๆ•ฐ๏ผ‰ใจ้…ๅˆ—y๏ผˆ็›ฎ็š„ๅค‰ๆ•ฐ๏ผ‰ใ‹ใ‚‰ๆœ€ๅฐไบŒไน—ๆณ•ใซใ‚ˆใ‚Šๅ›žๅธฐ็›ด็ทšใฎๅ‚พใaใจๅˆ‡็‰‡bใ‚’ๆฑ‚ใ‚ใพใ™ใ€‚
้‡ๅ›žๅธฐๅˆ†ๆž e = numpy.array([x1, x2])
e = numpy.vstack([numpy.ones(e.shape[1]), e])
b, a1, a2 = numpy.linalg.lstsq(e.T, o)[0]
้…ๅˆ—x1, x2๏ผˆ่ชฌๆ˜Žๅค‰ๆ•ฐ๏ผ‰ใจ้…ๅˆ—y๏ผˆ็›ฎ็š„ๅค‰ๆ•ฐ๏ผ‰ใ‹ใ‚‰ๅ›žๅธฐๆ›ฒ็ทšใฎๅ‚พใa1, a2ใจๅˆ‡็‰‡bใ‚’ๆฑ‚ใ‚ใพใ™ใ€‚
็›ด็ทš่ฟ‘ไผผ a, b = numpy.polyfit(x, y, 1) ้…ๅˆ—x๏ผˆ่ชฌๆ˜Žๅค‰ๆ•ฐ๏ผ‰ใจ้…ๅˆ—y๏ผˆ็›ฎ็š„ๅค‰ๆ•ฐ๏ผ‰ใ‹ใ‚‰่ฟ‘ไผผ็›ด็ทšใฎๅ‚พใaใจๅˆ‡็‰‡bใ‚’ๆฑ‚ใ‚ใพใ™ใ€‚
ๆ›ฒ็ทš่ฟ‘ไผผ a1, a2, b = numpy.polyfit(x, y, 2) ้…ๅˆ—x๏ผˆ่ชฌๆ˜Žๅค‰ๆ•ฐ๏ผ‰ใจ้…ๅˆ—y๏ผˆ็›ฎ็š„ๅค‰ๆ•ฐ๏ผ‰ใ‹ใ‚‰2ๆฌกใฎ่ฟ‘ไผผๆ›ฒ็ทšใฎไฟ‚ๆ•ฐa1, a2ใจๅˆ‡็‰‡bใ‚’ๆฑ‚ใ‚ใพใ™ใ€‚

ใƒ™ใ‚ฏใƒˆใƒซ่จˆ็ฎ—

่จ˜่ฟฐไพ‹ ๆฉŸ่ƒฝใฎ่ชฌๆ˜Ž
ๅŠ ็ฎ— z = x + y 2ใคใฎใƒ™ใ‚ฏใƒˆใƒซx, yใฎๅŠ ็ฎ—ใ‚’ๆฑ‚ใ‚ใพใ™ใ€‚
ๆธ›็ฎ— z = x – y 2ใคใฎใƒ™ใ‚ฏใƒˆใƒซx, yใฎๆธ›็ฎ—ใ‚’ๆฑ‚ใ‚ใพใ™ใ€‚
ๅ†…็ฉ z = x.dot(y) ใ‚‚ใ—ใใฏ z = numpy.dot(x, y) 2ใคใฎใƒ™ใ‚ฏใƒˆใƒซx, yใฎๅ†…็ฉใ‚’ๆฑ‚ใ‚ใพใ™ใ€‚ๅฐšใ€matrixๅž‹ใฎๅ ดๅˆใฏ็ฎ—่ก“ๆผ”็ฎ—ๅญ*ใ ใ‘ใงๅ†…็ฉใ‚’่จˆ็ฎ—ใงใใพใ™ใ€‚
ๅค–็ฉ z = numpy.cross(x, y) 2ใคใฎใƒ™ใ‚ฏใƒˆใƒซx, yใฎๅค–็ฉใ‚’ๆฑ‚ใ‚ใพใ™ใ€‚
ใƒŽใƒซใƒ  norm = numpy.linalg.norm(x) ใƒ™ใ‚ฏใƒˆใƒซxใฎใƒŽใƒซใƒ ใ‚’ๆฑ‚ใ‚ใพใ™ใ€‚
ๆญฃ่ฆๅŒ– e = x / numpy.linalg.norm(x) ใƒ™ใ‚ฏใƒˆใƒซxใฎๅ˜ไฝใƒ™ใ‚ฏใƒˆใƒซeใ‚’ๆฑ‚ใ‚ใพใ™ใ€‚๏ผˆๆญฃ่ฆๅŒ–๏ผ‰

่กŒๅˆ—่จˆ็ฎ—

่จ˜่ฟฐไพ‹ ๆฉŸ่ƒฝใฎ่ชฌๆ˜Ž
ๅŠ ๆธ›็ฎ— Z = X + Y 2ใคใฎ่กŒๅˆ—X, YใฎๅŠ ็ฎ—ใ‚’ๆฑ‚ใ‚ใพใ™ใ€‚
ๅ†…็ฉ Z = X.dot(Y) ใ‚‚ใ—ใใฏ Z=numpy.dot(X, Y) 2ใคใฎ่กŒๅˆ—X, Yใฎๅ†…็ฉใ‚’ๆฑ‚ใ‚ใพใ™ใ€‚ๅฐšใ€matrixๅž‹ใฎๅ ดๅˆใฏ็ฎ—่ก“ๆผ”็ฎ—ๅญ*ใ ใ‘ใงๅ†…็ฉใ‚’่จˆ็ฎ—ใงใใพใ™ใ€‚
ๅค–็ฉ Z = numpy.cross(X, Y) 2ใคใฎ่กŒๅˆ—X, Yใฎๅค–็ฉใ‚’ๆฑ‚ใ‚ใพใ™ใ€‚
้šŽๆ•ฐ(ใƒฉใƒณใ‚ฏ) rank = numpy.linalg.matrix_rank(X) ่กŒๅˆ—Xใฎ้šŽๆ•ฐ(ใƒฉใƒณใ‚ฏ)ใ‚’ๆฑ‚ใ‚ใพใ™ใ€‚
่กŒๅˆ—ๅผ det = numpy.linalg.det(X) ่กŒๅˆ—Xใ‹ใ‚‰่กŒๅˆ—ๅผdetใ‚’ๆฑ‚ใ‚ใพใ™ใ€‚
่ปข็ฝฎ่กŒๅˆ— Xt = X.T ่กŒๅˆ—Xใฎ่ปข็ฝฎ่กŒๅˆ—Xtใ‚’ๆฑ‚ใ‚ใพใ™ใ€‚
ๅ›บๆœ‰ๅ€คใƒปๅ›บๆœ‰ใƒ™ใ‚ฏใƒˆใƒซ lam, vec = numpy.linalg.eig(X) ่กŒๅˆ—Xใฎๅ›บๆœ‰ๅ€คlamใจๅ›บๆœ‰ใƒ™ใ‚ฏใƒˆใƒซvecใ‚’ๆฑ‚ใ‚ใพใ™ใ€‚
้€†่กŒๅˆ— invX = numpy.linalg.inv(X) ่กŒๅˆ—Xใฎ้€†่กŒๅˆ—invXใ‚’ๆฑ‚ใ‚ใพใ™ใ€‚
ๆ“ฌไผผ้€†่กŒๅˆ— pinvX = numpy.linalg.pinv(X) ่กŒๅˆ—Xใฎ็–‘ไผผ้€†่กŒๅˆ—pinvXใ‚’ๆฑ‚ใ‚ใพใ™ใ€‚
็‰น็•ฐๅ€คๅˆ†่งฃ(SVD) U, S, V = numpy.linalg.svd(X) ่กŒๅˆ—Xใ‚’็›ดไบค่กŒๅˆ—U, Vใจ่กŒๅˆ—Sใซๅˆ†่งฃใ—ใพใ™ใ€‚
QRๅˆ†่งฃ Q, R = numpy.linalg.qr(X) ่กŒๅˆ—Xใ‚’็›ดไบค่กŒๅˆ—QใจไธŠไธ‰่ง’่กŒๅˆ—Rใซๅˆ†่งฃใ—ใพใ™ใ€‚
ใ‚ณใƒฌใ‚นใ‚ญใƒผๅˆ†่งฃ L = numpy.linalg.cholesky(X) ๆญฃๅฎšๅ€คๅฏพ็งฐ่กŒๅˆ—Xใ‚’ๅˆ†่งฃใ—ใ€ไธ‹ไธ‰่ง’่กŒๅˆ—Lใ‚’ๆฑ‚ใ‚ใพใ™ใ€‚
ๅ›ž่ปข่กŒๅˆ— ่กŒๅˆ—Xใฎๅ›ž่ปข่กŒๅˆ—ใ‚’ๆฑ‚ใ‚ใพใ™ใ€‚

ไฟกๅทๅ‡ฆ็†

่จ˜่ฟฐไพ‹ ๆฉŸ่ƒฝใฎ่ชฌๆ˜Ž
1ๆฌกๅ…ƒFFT f = numpy.fft.fft(x) 1ๆฌกๅ…ƒใฎ้ซ˜้€Ÿใƒ•ใƒผใƒชใ‚จๅค‰ๆ›ใซใ‚ˆใ‚Šใ€1ๆฌกๅ…ƒ้…ๅˆ—xใฎใƒ‡ใƒผใ‚ฟใ‚’ๆ™‚้–“้ ˜ๅŸŸใ‹ใ‚‰ๅ‘จๆณขๆ•ฐ้ ˜ๅŸŸใซๅค‰ๆ›ใ—ใพใ™ใ€‚
2ๆฌกๅ…ƒFFT F = numpy.fft.fft(X) 2ๆฌกๅ…ƒใฎ้ซ˜้€Ÿใƒ•ใƒผใƒชใ‚จๅค‰ๆ›ใซใ‚ˆใ‚Šใ€2ๆฌกๅ…ƒ้…ๅˆ—Xใฎใƒ‡ใƒผใ‚ฟใ‚’ๆ™‚้–“้ ˜ๅŸŸใ‹ใ‚‰ๅ‘จๆณขๆ•ฐ้ ˜ๅŸŸใซๅค‰ๆ›ใ—ใพใ™ใ€‚
้›ถๅ‘จๆณขๆ•ฐๆˆๅˆ†ใฎ็งปๅ‹• Fs = numpy.fft.fftshift(F) 2ๆฌกๅ…ƒ้…ๅˆ—Fใฎ้›ถๅ‘จๆณขๆ•ฐๆˆๅˆ†ใ‚’ๅทฆไธŠใ‹ใ‚‰ไธญๅฟƒใซ็งปๅ‹•ใ•ใ›ใŸๆ–ฐใ—ใ„้…ๅˆ—Fsใ‚’็”Ÿๆˆใ—ใพใ™ใ€‚
1ๆฌกๅ…ƒIFFT x = numpy.fft.ifft(f) 1ๆฌกๅ…ƒใฎ้ซ˜้€Ÿ้€†ใƒ•ใƒผใƒชใ‚จๅค‰ๆ›ใซใ‚ˆใ‚Šใ€้…ๅˆ—fใฎใƒ‡ใƒผใ‚ฟใ‚’ๅ‘จๆณขๆ•ฐ้ ˜ๅŸŸใ‹ใ‚‰ๆ™‚้–“้ ˜ๅŸŸใซๅค‰ๆ›ใ—ใพใ™ใ€‚
2ๆฌกๅ…ƒ้€†FFT X = numpy.fft.ifft(F) 2ๆฌกๅ…ƒใฎ้ซ˜้€Ÿ้€†ใƒ•ใƒผใƒชใ‚จๅค‰ๆ›ใซใ‚ˆใ‚Šใ€้…ๅˆ—fใฎใƒ‡ใƒผใ‚ฟใ‚’ๅ‘จๆณขๆ•ฐ้ ˜ๅŸŸใ‹ใ‚‰ๆ™‚้–“้ ˜ๅŸŸใซๅค‰ๆ›ใ—ใพใ™ใ€‚
ๅ‘จๆณขๆ•ฐ่ปธใฎ็”Ÿๆˆ freq = numpy.fft.fftfreq(N, d) ใ‚ตใƒณใƒ—ใƒซๆ•ฐNใ€ใ‚ตใƒณใƒ—ใƒชใƒณใ‚ฐๅ‘จๆœŸใฎๅ‘จๆณขๆ•ฐ่ปธใฎๅ€คใ‚’ๆฑ‚ใ‚ใพใ™ใ€‚
ใ‚นใƒšใ‚ฏใƒˆใƒซ่งฃๆž
ใƒŽใ‚คใ‚บ้™คๅŽป

ใƒ•ใ‚กใ‚คใƒซๅ‡ฆ็†

่จ˜่ฟฐไพ‹ ๆฉŸ่ƒฝใฎ่ชฌๆ˜Ž
่ชญ่พผโ‘  X = numpy.loadtxt(filename, delimiter, skiprows, dtype) ใƒ†ใ‚ญใ‚นใƒˆๅฝขๅผใฎใƒ•ใ‚กใ‚คใƒซใ‚’่ชญใฟ่พผใ‚“ใงใ€ใƒ‡ใƒผใ‚ฟใ‚’NumPyๅž‹้…ๅˆ—Xใซๆ ผ็ดใ—ใพใ™ใ€‚๏ผˆfilename:ใƒ•ใ‚กใ‚คใƒซๅ, delimiter:ๅŒบๅˆ‡ใ‚Šๆ–‡ๅญ—, skiprows:่ชญใฟ้ฃ›ใฐใ™ใƒ˜ใƒƒใƒ€่กŒใฎ่กŒๆ•ฐ dtype:ใƒ‡ใƒผใ‚ฟๅž‹๏ผ‰
่ชญ่พผโ‘ก X = numpy.genfromtxt(filename, delimiter, skip_header, dtype) ใƒ†ใ‚ญใ‚นใƒˆๅฝขๅผใฎใƒ•ใ‚กใ‚คใƒซใ‚’่ชญใฟ่พผใ‚“ใงใ€ใƒ‡ใƒผใ‚ฟใ‚’NumPyๅž‹้…ๅˆ—Xใซๆ ผ็ดใ—ใพใ™ใ€‚๏ผˆfilename:ใƒ•ใ‚กใ‚คใƒซๅ, delimiter:ๅŒบๅˆ‡ใ‚Šๆ–‡ๅญ—, skiprows:่ชญใฟ้ฃ›ใฐใ™ใƒ˜ใƒƒใƒ€่กŒใฎ่กŒๆ•ฐ dtype:ใƒ‡ใƒผใ‚ฟๅž‹๏ผ‰
ๆ›ธ่พผโ‘  numpy.savetxt(filename, x, delimiter) NumPyๅž‹้…ๅˆ—xใฎใƒ‡ใƒผใ‚ฟใ‚’ใƒ†ใ‚ญใ‚นใƒˆๅฝขๅผใงใƒ•ใ‚กใ‚คใƒซใซๆ›ธใ่พผใฟใพใ™ใ€‚๏ผˆfilename:ใƒ•ใ‚กใ‚คใƒซๅ, delimiter:ๅŒบๅˆ‡ใ‚Šๆ–‡ๅญ—๏ผ‰
ๆ›ธ่พผโ‘ก numpy.savez(filename, a, b, …) ่ค‡ๆ•ฐใฎ้…ๅˆ—a, b, …ใฎใƒ‡ใƒผใ‚ฟใ‚’ใƒใ‚คใƒŠใƒชๅฝขๅผ๏ผˆ้žๅœง็ธฎ๏ผ‰ใงๆ›ธใ่พผใฟใพใ™ใ€‚
ๆ›ธ่พผโ‘ข numpy.savez_compressed(filename, a, b, …) ่ค‡ๆ•ฐใฎ้…ๅˆ—a, b, …ใฎใƒ‡ใƒผใ‚ฟใ‚’ใƒใ‚คใƒŠใƒชๅฝขๅผ๏ผˆๅœง็ธฎ๏ผ‰ใงๆ›ธใ่พผใฟใพใ™ใ€‚

ใŠใ™ใ™ใ‚่จ˜ไบ‹

Pythonๅ…ฅ้–€ ใ‚ตใƒณใƒ—ใƒซ้›†
NumPyๅ…ฅ้–€ ใ‚ตใƒณใƒ—ใƒซ้›†
ใ€NumPyๅ…ฅ้–€ใ€‘้…ๅˆ—ใฎๅŸบ็คŽ็š„ใชๆ‰ฑใ„ๆ–น๏ผˆndarray๏ผ‰

่จ˜ไบ‹ใฎ็›ฃไฟฎ่€…
่ฅฟไฝๆŠ€็ ”

ใƒ—ใƒญใ‚ฐใƒฉใƒŸใƒณใ‚ฐ่จ€่ชžใ€ŒPythonใ€ใ‚’็ ”็ฉถใ€ไป•ไบ‹ใ€่ถฃๅ‘ณใงใƒ‡ใƒผใ‚ฟๅˆ†ๆžใ‚„ไฝœๆฅญ่‡ชๅ‹•ๅŒ–ใชใฉใซๆดป็”จใ—ใฆใใŸใƒŽใ‚ฆใƒใ‚ฆใ‚’ๆƒ…ๅ ฑ็™บไฟกใ—ใฆใ„ใพใ™ใ€‚
็ญ†่€…ใฎ่ฉณใ—ใ„ใƒ—ใƒญใƒ•ใ‚ฃใƒผใƒซใ‚„ใŠๅ•ๅˆใ›ใฏใ“ใกใ‚‰ใฎใƒšใƒผใ‚ธใพใงใ€‚
โ‡“Youtubeใ‚„X๏ผˆๆ—งTwitter๏ผ‰ใงใ‚‚ๆƒ…ๅ ฑ็™บไฟกไธญใงใ™๏ผ

่ฅฟไฝๆŠ€็ ”ใ‚’ใƒ•ใ‚ฉใƒญใƒผใ™ใ‚‹
NumPy

ใ‚ณใƒกใƒณใƒˆ