Jadual Kandungan
ndarray的创建
二维的数组
创建时指定类型
创建一些特殊的矩阵
创建一些有特定规律的矩阵
一些基本的运算
加减乘除三角函数逻辑运算
矩阵运算
一些常用的全局函数
矩阵的索引分片遍历
矩阵的遍历
矩阵的特殊运算
改变矩阵形状--reshape
矩阵的合并

NumPy常用方法总结

Aug 17, 2017 am 11:26 AM
numpy Biasa digunakan ringkaskan

NumPy是Python的一种开源的数值计算扩展。这种工具可用来存储和处理大型矩阵,比Python自身的嵌套列表(nested list structure)结构要高效的多(该结构也可以用来表示矩阵(matrix))。NumPy(Numeric Python)提供了许多高级的数值编程工具,如:矩阵数据类型、矢量处理,以及精密的运算库。专为进行严格的数字处理而产生。多为很多大型金融公司使用,以及核心的科学计算组织如:Lawrence Livermore,NASA用其处理一些本来使用C++,Fortran或Matlab等所做的任务。

numpy中的数据类型,ndarray类型,和标准库中的array.array并不一样。

ndarray的创建

>>> import numpy as np
>>> a = np.array([2,3,4])
>>> a
array([2, 3, 4])
>>> a.dtype
dtype('int64')
>>> b = np.array([1.2, 3.5, 5.1])
>>> b.dtype
dtype('float64')
Salin selepas log masuk

二维的数组

>>> b = np.array([(1.5,2,3), (4,5,6)])
>>> b
array([[ 1.5,  2. ,  3. ],
       [ 4. ,  5. ,  6. ]])
Salin selepas log masuk

创建时指定类型

>>> c = np.array( [ [1,2], [3,4] ], dtype=complex )
>>> c
array([[ 1.+0.j,  2.+0.j],
       [ 3.+0.j,  4.+0.j]])
Salin selepas log masuk

创建一些特殊的矩阵

>>> np.zeros( (3,4) )
array([[ 0.,  0.,  0.,  0.],
       [ 0.,  0.,  0.,  0.],
       [ 0.,  0.,  0.,  0.]])
>>> np.ones( (2,3,4), dtype=np.int16 )                # dtype can also be specified
array([[[ 1, 1, 1, 1],
        [ 1, 1, 1, 1],
        [ 1, 1, 1, 1]],
       [[ 1, 1, 1, 1],
        [ 1, 1, 1, 1],
        [ 1, 1, 1, 1]]], dtype=int16)
>>> np.empty( (2,3) )                                 # uninitialized, output may vary
array([[  3.73603959e-262,   6.02658058e-154,   6.55490914e-260],
       [  5.30498948e-313,   3.14673309e-307,   1.00000000e+000]])
Salin selepas log masuk

创建一些有特定规律的矩阵

>>> np.arange( 10, 30, 5 )
array([10, 15, 20, 25])
>>> np.arange( 0, 2, 0.3 )                 # it accepts float arguments
array([ 0. ,  0.3,  0.6,  0.9,  1.2,  1.5,  1.8])
>>> from numpy import pi
>>> np.linspace( 0, 2, 9 )                 # 9 numbers from 0 to 2
array([ 0.  ,  0.25,  0.5 ,  0.75,  1.  ,  1.25,  1.5 ,  1.75,  2.  ])
>>> x = np.linspace( 0, 2*pi, 100 )        # useful to evaluate function at lots of points
>>> f = np.sin(x)
Salin selepas log masuk

一些基本的运算

加减乘除三角函数逻辑运算

>>> a = np.array( [20,30,40,50] )
>>> b = np.arange( 4 )
>>> b
array([0, 1, 2, 3])
>>> c = a-b
>>> c
array([20, 29, 38, 47])
>>> b**2
array([0, 1, 4, 9])
>>> 10*np.sin(a)
array([ 9.12945251, -9.88031624,  7.4511316 , -2.62374854])
>>> a<35
array([ True, True, False, False], dtype=bool)
Salin selepas log masuk

矩阵运算

matlab中有.* ,./等等

但是在numpy中,如果使用+,-,×,/优先执行的是各个点之间的加减乘除法

如果两个矩阵(方阵)可既以元素之间对于运算,又能执行矩阵运算会优先执行元素之间的运算

>>> import numpy as np
>>> A = np.arange(10,20)
>>> B = np.arange(20,30)
>>> A + B
array([30, 32, 34, 36, 38, 40, 42, 44, 46, 48])
>>> A * B
array([200, 231, 264, 299, 336, 375, 416, 459, 504, 551])
>>> A / B
array([0, 0, 0, 0, 0, 0, 0, 0, 0, 0])
>>> B / A
array([2, 1, 1, 1, 1, 1, 1, 1, 1, 1])
Salin selepas log masuk

如果需要执行矩阵运算,一般就是矩阵的乘法运算

>>> A = np.array([1,1,1,1])
>>> B = np.array([2,2,2,2])
>>> A.reshape(2,2)
array([[1, 1],
       [1, 1]])
>>> B.reshape(2,2)
array([[2, 2],
       [2, 2]])
>>> A * B
array([2, 2, 2, 2])
>>> np.dot(A,B)
8
>>> A.dot(B)
8
Salin selepas log masuk

一些常用的全局函数

>>> B = np.arange(3)
>>> B
array([0, 1, 2])
>>> np.exp(B)
array([ 1.        ,  2.71828183,  7.3890561 ])
>>> np.sqrt(B)
array([ 0.        ,  1.        ,  1.41421356])
>>> C = np.array([2., -1., 4.])
>>> np.add(B, C)
array([ 2.,  0.,  6.])
Salin selepas log masuk

矩阵的索引分片遍历

>>> a = np.arange(10)**3
>>> a
array([  0,   1,   8,  27,  64, 125, 216, 343, 512, 729])
>>> a[2]
8
>>> a[2:5]
array([ 8, 27, 64])
>>> a[:6:2] = -1000    # equivalent to a[0:6:2] = -1000; from start to position 6, exclusive, set every 2nd element to -1000
>>> a
array([-1000,     1, -1000,    27, -1000,   125,   216,   343,   512,   729])
>>> a[ : :-1]                                 # reversed a
array([  729,   512,   343,   216,   125, -1000,    27, -1000,     1, -1000])
>>> for i in a:
...     print(i**(1/3.))
...
nan
1.0
nan
3.0
nan
5.0
6.0
7.0
8.0
9.0
Salin selepas log masuk

矩阵的遍历

>>> import numpy as np
>>> b = np.arange(16).reshape(4, 4)
>>> for row in b:
...  print(row)
... 
[0 1 2 3]
[4 5 6 7]
[ 8  9 10 11]
[12 13 14 15]
>>> for node in b.flat:
...  print(node)
... 
0
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
Salin selepas log masuk

矩阵的特殊运算

改变矩阵形状--reshape

>>> a = np.floor(10 * np.random.random((3,4)))
>>> a
array([[ 6.,  5.,  1.,  5.],
       [ 5.,  5.,  8.,  9.],
       [ 5.,  5.,  9.,  7.]])
>>> a.ravel()
array([ 6.,  5.,  1.,  5.,  5.,  5.,  8.,  9.,  5.,  5.,  9.,  7.])
>>> a
array([[ 6.,  5.,  1.,  5.],
       [ 5.,  5.,  8.,  9.],
       [ 5.,  5.,  9.,  7.]])
Salin selepas log masuk

resize和reshape的区别

resize会改变原来的矩阵,reshape并不会

>>> a
array([[ 6.,  5.,  1.,  5.],
       [ 5.,  5.,  8.,  9.],
       [ 5.,  5.,  9.,  7.]])
>>> a.reshape(2,-1)
array([[ 6.,  5.,  1.,  5.,  5.,  5.],
       [ 8.,  9.,  5.,  5.,  9.,  7.]])
>>> a
array([[ 6.,  5.,  1.,  5.],
       [ 5.,  5.,  8.,  9.],
       [ 5.,  5.,  9.,  7.]])
>>> a.resize(2,6)
>>> a
array([[ 6.,  5.,  1.,  5.,  5.,  5.],
       [ 8.,  9.,  5.,  5.,  9.,  7.]])
Salin selepas log masuk

矩阵的合并

>>> a = np.floor(10*np.random.random((2,2)))
>>> a
array([[ 8.,  8.],
       [ 0.,  0.]])
>>> b = np.floor(10*np.random.random((2,2)))
>>> b
array([[ 1.,  8.],
       [ 0.,  4.]])
>>> np.vstack((a,b))
array([[ 8.,  8.],
       [ 0.,  0.],
       [ 1.,  8.],
       [ 0.,  4.]])
>>> np.hstack((a,b))
array([[ 8.,  8.,  1.,  8.],
       [ 0.,  0.,  0.,  4.]])
Salin selepas log masuk

Atas ialah kandungan terperinci NumPy常用方法总结. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn

Alat AI Hot

Undresser.AI Undress

Undresser.AI Undress

Apl berkuasa AI untuk mencipta foto bogel yang realistik

AI Clothes Remover

AI Clothes Remover

Alat AI dalam talian untuk mengeluarkan pakaian daripada foto.

Undress AI Tool

Undress AI Tool

Gambar buka pakaian secara percuma

Clothoff.io

Clothoff.io

Penyingkiran pakaian AI

Video Face Swap

Video Face Swap

Tukar muka dalam mana-mana video dengan mudah menggunakan alat tukar muka AI percuma kami!

Alat panas

Notepad++7.3.1

Notepad++7.3.1

Editor kod yang mudah digunakan dan percuma

SublimeText3 versi Cina

SublimeText3 versi Cina

Versi Cina, sangat mudah digunakan

Hantar Studio 13.0.1

Hantar Studio 13.0.1

Persekitaran pembangunan bersepadu PHP yang berkuasa

Dreamweaver CS6

Dreamweaver CS6

Alat pembangunan web visual

SublimeText3 versi Mac

SublimeText3 versi Mac

Perisian penyuntingan kod peringkat Tuhan (SublimeText3)

Bagaimana untuk menyemak versi numpy dengan cepat Bagaimana untuk menyemak versi numpy dengan cepat Jan 19, 2024 am 08:23 AM

Numpy ialah perpustakaan matematik penting dalam Python Ia menyediakan operasi tatasusunan yang cekap dan fungsi pengiraan saintifik dan digunakan secara meluas dalam analisis data, pembelajaran mesin, pembelajaran mendalam dan bidang lain. Apabila menggunakan numpy, kita selalunya perlu menyemak nombor versi numpy untuk menentukan fungsi yang disokong oleh persekitaran semasa. Artikel ini akan memperkenalkan cara menyemak versi numpy dengan cepat dan memberikan contoh kod khusus. Kaedah 1: Gunakan atribut __version__ yang disertakan dengan numpy Modul numpy disertakan dengan __.

Panduan langkah demi langkah tentang cara memasang NumPy dalam PyCharm dan memanfaatkan sepenuhnya ciri-cirinya Panduan langkah demi langkah tentang cara memasang NumPy dalam PyCharm dan memanfaatkan sepenuhnya ciri-cirinya Feb 18, 2024 pm 06:38 PM

Ajar anda langkah demi langkah untuk memasang NumPy dalam PyCharm dan menggunakan sepenuhnya fungsinya yang berkuasa: NumPy ialah salah satu perpustakaan asas untuk pengkomputeran saintifik dalam Python Ia menyediakan objek tatasusunan berbilang dimensi berprestasi tinggi dan pelbagai fungsi yang diperlukan untuk melaksanakan operasi asas pada fungsi tatasusunan. Ia merupakan bahagian penting dalam kebanyakan projek sains data dan pembelajaran mesin. Artikel ini akan memperkenalkan anda kepada cara memasang NumPy dalam PyCharm, dan menunjukkan ciri hebatnya melalui contoh kod tertentu. Langkah 1: Pasang PyCharm Pertama, kami

Menaik taraf versi numpy: panduan terperinci dan mudah diikuti Menaik taraf versi numpy: panduan terperinci dan mudah diikuti Feb 25, 2024 pm 11:39 PM

Cara menaik taraf versi numpy: Tutorial yang mudah diikuti, memerlukan contoh kod konkrit Pengenalan: NumPy ialah perpustakaan Python penting yang digunakan untuk pengkomputeran saintifik. Ia menyediakan objek tatasusunan berbilang dimensi yang berkuasa dan satu siri fungsi berkaitan yang boleh digunakan untuk melaksanakan operasi berangka yang cekap. Apabila versi baharu dikeluarkan, ciri yang lebih baharu dan pembetulan pepijat sentiasa tersedia kepada kami. Artikel ini akan menerangkan cara untuk menaik taraf pustaka NumPy anda yang dipasang untuk mendapatkan ciri terkini dan menyelesaikan isu yang diketahui. Langkah 1: Semak versi NumPy semasa pada permulaan

Ringkaskan penggunaan fungsi system() dalam sistem Linux Ringkaskan penggunaan fungsi system() dalam sistem Linux Feb 23, 2024 pm 06:45 PM

Ringkasan fungsi system() di bawah Linux Dalam sistem Linux, fungsi system() ialah fungsi yang sangat biasa digunakan, yang boleh digunakan untuk melaksanakan arahan baris arahan. Artikel ini akan memperkenalkan fungsi system() secara terperinci dan menyediakan beberapa contoh kod khusus. 1. Penggunaan asas fungsi system() Pengisytiharan fungsi system() adalah seperti berikut: intsystem(constchar*command);

Panduan pemilihan versi Numpy: mengapa naik taraf? Panduan pemilihan versi Numpy: mengapa naik taraf? Jan 19, 2024 am 09:34 AM

Dengan perkembangan pesat bidang seperti sains data, pembelajaran mesin dan pembelajaran mendalam, Python telah menjadi bahasa arus perdana untuk analisis dan pemodelan data. Dalam Python, NumPy (singkatan untuk NumericalPython) ialah perpustakaan yang sangat penting kerana ia menyediakan satu set objek tatasusunan berbilang dimensi yang cekap dan merupakan asas untuk banyak perpustakaan lain seperti panda, SciPy dan scikit-learn. Dalam proses menggunakan NumPy, anda mungkin menghadapi masalah keserasian antara versi yang berbeza, kemudian

Panduan pemasangan Numpy: Menyelesaikan masalah pemasangan dalam satu artikel Panduan pemasangan Numpy: Menyelesaikan masalah pemasangan dalam satu artikel Feb 21, 2024 pm 08:15 PM

Panduan pemasangan Numpy: Satu artikel untuk menyelesaikan masalah pemasangan, memerlukan contoh kod khusus Pengenalan: Numpy ialah perpustakaan pengkomputeran saintifik yang berkuasa dalam Python Ia menyediakan objek dan alatan tatasusunan berbilang dimensi yang cekap untuk mengendalikan data tatasusunan. Walau bagaimanapun, untuk pemula, memasang Numpy boleh menyebabkan kekeliruan. Artikel ini akan memberikan anda panduan pemasangan Numpy untuk membantu anda menyelesaikan masalah pemasangan dengan cepat. 1. Pasang persekitaran Python: Sebelum memasang Numpy, anda perlu terlebih dahulu memastikan bahawa Py telah dipasang.

Temui kaedah rahsia untuk menyahpasang perpustakaan NumPy dengan cepat Temui kaedah rahsia untuk menyahpasang perpustakaan NumPy dengan cepat Jan 26, 2024 am 08:32 AM

Rahsia cara menyahpasang perpustakaan NumPy dengan cepat didedahkan Contoh kod khusus NumPy ialah perpustakaan pengkomputeran saintifik Python yang digunakan secara meluas dalam bidang seperti analisis data, pengkomputeran saintifik dan pembelajaran mesin. Walau bagaimanapun, kadangkala kami mungkin perlu menyahpasang pustaka NumPy, sama ada untuk mengemas kini versi atau atas sebab lain. Artikel ini akan memperkenalkan beberapa kaedah untuk menyahpasang perpustakaan NumPy dengan cepat dan memberikan contoh kod khusus. Kaedah 1: Gunakan pip untuk menyahpasang pip ialah alat pengurusan pakej Python yang boleh digunakan untuk memasang, menaik taraf dan

Analisis mendalam tentang operasi penghirisan numpy dan aplikasi dalam pertempuran sebenar Analisis mendalam tentang operasi penghirisan numpy dan aplikasi dalam pertempuran sebenar Jan 26, 2024 am 08:52 AM

Penjelasan terperinci tentang kaedah operasi penghirisan numpy dan panduan aplikasi praktikal Pengenalan: Numpy ialah salah satu perpustakaan pengkomputeran saintifik yang paling popular dalam Python, menyediakan fungsi operasi tatasusunan yang berkuasa. Antaranya, operasi menghiris adalah salah satu fungsi yang biasa digunakan dan berkuasa dalam numpy. Artikel ini akan memperkenalkan kaedah operasi penghirisan secara numpy secara terperinci, dan menunjukkan penggunaan khusus operasi penghirisan melalui panduan aplikasi praktikal. 1. Pengenalan kepada kaedah operasi penghirisan numpy Operasi penghirisan numpy merujuk kepada mendapatkan subset tatasusunan dengan menentukan selang indeks. Bentuk asasnya ialah:

See all articles