Pythonデータマイニングスタディnotes-numpy

numpyを学んだ後、私はnumpyのいくつかの一般的な使用法を整理しました

最初にnumpyライブラリを紹介します

import numpy as np

以下はデフォルトでnumpyライブラリを導入しています

  1. サイズ10のゼロベクトルを作成する
array = np.zeros(10)
print(array)
#零向量为np.zeros,全为1的向量为np.ones,只有全0和全1
  1. サイズが10で、5番目の値が1のゼロベクトルを作成します。
array = np.zeros(10)
array[4] = 1 #注意下标是4
print(array)
  1. 10から49までの値を持つベクトルを作成する
array = np.arange(10, 50) #左闭右开
print(array)
  1. 0から8までの3 * 3行列を作成します。
array = np.arange(0, 9).reshape(3, 3) #reshape可改变数组的格式
print(array)
  1. ランダムな値を持つ10x10配列を作成し、最小値と最大値を見つけます
array = np.random.random((10, 10))
n1 = array.max()
n2 = array.min()
print(array)
print(n1)
print(n2)
  1. n行n列すべて0の2次元配列を作成します。
#两种表示方法
def func1(n):
	arr = np.zeros([n] * 2)
	return arr
def func2(n):
	arr = np.zeros([n, n])
	return arr
num = int(input("please enter a number:"))
arr1 = func1(num)
arr2 = func2(num)
print(arr1)
print(arr2)
  1. 境界が1で内部が0の2次元配列を作成する
#方法一:改变边界
def func1(n):
    arr = np.zeros([n] * 2) #创建一个n行n列的零向量
    arr[[0, -1], :] = 1 #用切片的方式将所有列里的第0行和最后一行改为1
    arr[:, [0, -1]] = 1 #用切片的方式将所有行里的第0列和最后一列改为1
    return arr
num = int(input("please input a number:"))
array = func1(num)
print(array)
#方法二:改变内部
def func2(n):
    arr = np.ones([n] * 2) #创建一个n行n列全为1的向量
    arr[1:-1, 1:-1] = 0 #用切片的方式将内部改为0
    return arr
num = int(input("enter a number:"))
array = func2(num)
print(array)
  1. 5×3マトリックス×3×2マトリックス(実数マトリックス積)
a1 = np.arange(15).reshape(5, 3)
a2 = np.arange(6).reshape(3, 2)
a3 = np.dot(a7, a8)
print(a1)
print(a2)
print(a3)

その他の知識と知識:

#数组元素个数:
print(array.size)
#数组的形状:
print(array.shape)
#数组array内所有数据加减乘除一个数num
print(array + num) #其他类比即可
#将列表转换为数组
#先创建一个列表
a = [1,2,3,4]
#列表转换为数组
b = np.array(a)
#矩阵运算
#创建两个矩阵
x = np.array([[1, 2], [3, 4]])
y = np.array([[5, 6], [7, -1]])
#矩阵相乘
arr1 = np.dot(x, y)
#矩阵求逆
arr2 = np.linalg.inv(x)
#矩阵转置
arr3 = x.T

後で他の人に会ったときに追加します

元の記事を8件公開 7 獲得 ビュー数345

おすすめ

転載: blog.csdn.net/weixin_45824303/article/details/105398227