python中 numpy
Python中的Numpy是什么? (What is Numpy in Python?)
Numpy is an array processing package which provides high-performance multidimensional array object and utilities to work with arrays. It is a basic package for scientific computation with python. It is a linear algebra library and is very important for data science with python since almost all of the libraries in the pyData ecosystem rely on Numpy as one of their main building blocks. It is incredibly fast, as it has bindings to C.
Numpy是一個數組處理程序包,它提供高性能的多維數組對象和實用程序來處理數組。 它是使用python進行科學計算的基本軟件包。 它是一個線性代數庫,對于使用python進行數據科學非常重要,因為pyData生態系統中的幾乎所有庫都依賴Numpy作為其主要構建模塊之一。 它非常快,因為它與C具有綁定。
Some of the many features, provided by numpy are as always,
numpy提供的許多功能一如既往,
N-dimensional array object
N維數組對象
Broadcasting functions
廣播功能
Utilities for integrating with C / C++
與C / C ++集成的實用程序
Useful linear algebra and random number capabilities
有用的線性代數和隨機數功能
安裝Numpy (Installing Numpy)
1) Using pip
1)使用點子
pip install numpy
Installing output
安裝輸出
pip install numpy
Collecting numpy
Downloading https://files.pythonhosted.org/packages/60/9a/a6b3168f2194fb468dcc4cf54c8344d1f514935006c3347ede198e968cb0/numpy-1.17.4-cp37-cp37m-macosx_10_9_x86_64.whl (15.1MB)
100% |████████████████████████████████| 15.1MB 1.3MB/s
Installing collected packages: numpy
Successfully installed numpy-1.17.4
2) Using Anaconda
2)使用水蟒
conda install numpy
numpy中的數組 (Arrays in Numpy)
Numpy's main object is the homogeneous multidimensional array. Numpy arrays are two types: vectors and matrices. vectors are strictly 1-d arrays and matrices are 2-d.
Numpy的主要對象是齊次多維數組。 numpy數組有兩種類型: 向量和矩陣 。 向量嚴格是一維數組, 矩陣是二維。
In Numpy dimensions are known as axes. The number of axes is rank. The below examples lists the most important attributes of a ndarray object.
在Numpy中,尺寸稱為軸。 軸數為等級。 以下示例列出了ndarray對象的最重要屬性。
Example:
例:
# importing package
import numpy as np
# creating array
arr = np.array([[11,12,13],[14,15,16]])
print("Array is of type {}".format(type(arr)))
print("No. of dimensions {}".format(arr.ndim))
print("shape of array:{}".format(arr.shape))
print("size of array:{}".format(arr.size))
print("type of elements in the array:{}".format(arr.dtype))
Output
輸出量
Array is of type <class 'numpy.ndarray'>
No. of dimensions 2
shape of array:(2, 3)
size of array:6
type of elements in the array:int64
創建一個numpy數組 (Creating a numpy array)
Creating a numpy array is possible in multiple ways. For instance, a list or a tuple can be cast to a numpy array using the. array() method (as explained in the above example). The array transforms a sequence of the sequence into 2-d arrays, sequences of sequences into a 3-d array and so on.
創建numpy數組的方式有多種。 例如,可以使用將列表或元組強制轉換為numpy數組。 array()方法 (如以上示例中所述)。 數組將序列的序列轉換為2維數組,將序列的序列轉換為3維數組,依此類推。
To create sequences of numbers, NumPy provides a function called arange that returns arrays instead of lists.
為了創建數字序列,NumPy提供了一個稱為arange的函數,該函數返回數組而不是列表。
Syntax:
句法:
# returns evenly spaced values within a given interval.
arange([start,] stop [,step], dtype=None)
Example:
例:
x = np.arange(10,30,5)
print(x)
# Ouput: [10 15 20 25]
The function zeros create an array full of zeros, the function ones create an array full of ones, and the function empty creates an array whose initial content is random and depends on the state of the memory. By default, the dtype of the created array is float64.
函數零將創建一個由零組成的數組,函數一個將創建由零組成的數組,函數空將創建一個數組,其初始內容是隨機的,并且取決于內存的狀態。 默認情況下,創建的數組的dtype為float64。
Example:
例:
# importing package
import numpy as np
x = np.zeros((3,4))
print("np.zeros((3,4))...")
print(x)
x = np.ones((3,4))
print("np.ones((3,4))...")
print(x)
x = np.empty((3,4))
print("np.empty((3,4))...")
print(x)
x = np.empty((1,4))
print("np.empty((1,4))...")
print(x)
Output
輸出量
np.zeros((3,4))...
[[0. 0. 0. 0.]
[0. 0. 0. 0.]
[0. 0. 0. 0.]]
np.ones((3,4))...
[[1. 1. 1. 1.]
[1. 1. 1. 1.]
[1. 1. 1. 1.]]
np.empty((3,4))...
[[1. 1. 1. 1.]
[1. 1. 1. 1.]
[1. 1. 1. 1.]]
np.empty((1,4))...
[[1.63892563e-316 0.00000000e+000 2.11026305e-312 2.56761491e-312]]
numpy函數 (Numpy functions)
Some more function available with NumPy to create an array are,
NumPy提供了一些更多的函數來創建數組,
1) linspace()
1)linspace()
It returns an evenly spaced numbers over a specified interval.
它在指定的間隔內返回均勻間隔的數字。
Syntax:
句法:
linspace(start, stop, num=50, endpoint=True, restep=False, dtype=None)
Example:
例:
# importing package
import numpy as np
x = np.linspace(1,3,num=10)
print(x)
Output
輸出量
[1. 1.22222222 1.44444444 1.66666667 1.88888889 2.11111111
2.33333333 2.55555556 2.77777778 3. ]
2) eye()
2)眼睛()
It returns a 2-D array with ones on the diagonal and zeros elsewhere.
它返回一個二維數組,對角線上有一個,其他位置為零。
Syntax:
句法:
eye(N, M=None, k=0, dtype=<class 'float'>, order='C')
Example:
例:
# importing package
import numpy as np
x = np.eye(4)
print(x)
Output
輸出量
[[1. 0. 0. 0.] [0. 1. 0. 0.]
[0. 0. 1. 0.]
[0. 0. 0. 1.]]
3) random()
3)random()
It creates an array with random numbers
它創建一個帶有隨機數的數組
Example:
例:
# importing package
import numpy as np
x = np.random.rand(5)
print("np.random.rand(5)...")
print(x)
x = np.random.rand(5,1)
print("np.random.rand(5,1)...")
print(x)
x = np.random.rand(5,1,3)
print("np.random.rand(5,1,3)...")
print(x)
# returns a random number
x = np.random.randn()
print("np.random.randn()...")
print(x)
# returns a 2-D array with random numbers
x = np.random.randn(2,3)
print("np.random.randn(2,3)...")
print(x)
x = np.random.randint(3)
print("np.random.randint(3)...")
print(x)
# returns a random number in between low and high
x = np.random.randint(3,100)
print("np.random.randint(3,100)...")
print(x)
# returns an array of random numbers of length 34
x = np.random.randint(3,100,34)
print("np.random.randint(3,100,34)...")
print(x)
Output
輸出量
np.random.rand(5)...[0.87417146 0.77399086 0.40012698 0.37192848 0.98260636]
np.random.rand(5,1)...
[[0.712829 ]
[0.65959462]
[0.41553044]
[0.30583293]
[0.83997539]]
np.random.rand(5,1,3)...
[[[0.75920149 0.54824968 0.0547891 ]]
[[0.70911911 0.16475541 0.5350475 ]]
[[0.74052103 0.4782701 0.2682752 ]]
[[0.76906319 0.02881364 0.83366651]]
[[0.79607073 0.91568043 0.7238144 ]]]
np.random.randn()...
-0.6793254693909823
np.random.randn(2,3)...
[[ 0.66683143 0.44936287 -0.41531392]
[ 1.86320357 0.76638331 -1.92146833]]
np.random.randint(3)...
1
np.random.randint(3,100)...
53
np.random.randint(3,100,34)...
[43 92 76 39 78 83 89 87 96 59 32 74 31 77 56 53 18 45 78 21 46 10 25 86
64 29 49 4 18 19 90 17 62 29]
4) Reshape method (shape manipulation)
4)整形方法(形狀處理)
An array has a shape given by the number of elements along each axis,
數組的形狀由沿每個軸的元素數確定,
# importing package
import numpy as np
x = np.floor(10*np.random.random((3,4)))
print(x)
print(x.shape)
Output
輸出量
[[0. 2. 9. 4.]
[0. 4. 1. 7.]
[9. 7. 6. 2.]]
(3, 4)
The shape of an array can be changes with various commands. However, the shape commands return all modified arrays but do not change the original array.
數組的形狀可以通過各種命令進行更改。 但是,shape命令返回所有修改后的數組,但不更改原始數組。
# importing package
import numpy as np
x = np.floor(10*np.random.random((3,4)))
print(x)
# returns the array, flattened
print("x.ravel()...")
print(x.ravel())
# returns the array with modified shape
print("x.reshape(6,2)...")
print(x.reshape(6,2))
# returns the array , transposed
print("x.T...")
print(x.T)
print("x.T.shape...")
print(x.T.shape)
print("x.shape...")
print(x.shape)
Output
輸出量
[[3. 1. 0. 6.] [3. 1. 2. 4.]
[7. 0. 0. 1.]]
x.ravel()...
[3. 1. 0. 6. 3. 1. 2. 4. 7. 0. 0. 1.]
x.reshape(6,2)...
[[3. 1.]
[0. 6.]
[3. 1.]
[2. 4.]
[7. 0.]
[0. 1.]]
x.T...
[[3. 3. 7.] [1. 1. 0.]
[0. 2. 0.]
[6. 4. 1.]]
x.T.shape...
(4, 3)
x.shape...
(3, 4)
其他方法 (Additional methods)
# importing package
import numpy as np
x = np.floor(10*np.random.random((3,4)))
print(x)
#Return the maximum value in an array
print("x.max():", x.max())
# Return the minimum value in a array
print("x.min():", x.min())
# Return the index of max value in an array
print("x.argmax():", x.argmax())
# Return the index of min value in an array
print("x.argmin():", x.argmin())
Output
輸出量
[[4. 0. 5. 2.] [8. 5. 9. 7.]
[9. 3. 5. 5.]]
x.max(): 9.0
x.min(): 0.0
x.argmax(): 6
x.argmin(): 1
翻譯自: https://www.includehelp.com/python/numpy.aspx
python中 numpy