Numpy 基础

#!/usr/bin/env python3
# _*_ coding: utf-8 _*_

import numpy as np

#创建数组

# arr1 = np.array([1,23,4]) #通过列表创建数组
# arr2 = np.array([(1,2,3),(2,3,4,)]) #通过元组创建数组
# arr3 = np.zeros((2,3)) #通过元组(2,3)生成零矩阵
# arr4 = np.identity(3) #生成3维的单位矩阵
# arr5 = np.random.random(size = (2,3)) #生成每个元素都在[0,1]之间的随机矩阵
#
# print(arr2.shape) #返回数据的规格
# print(arr2.ndim) #返回数据的秩
# print(arr2.size) #返回数据元素总数
# print(arr2.dtype.name) #返回矩阵元素的数据类型
# print(type(arr2)) #查看整个数组对象的类型
#
# #通过索引和切片访问数组元素
# def f(x, y):
#     return 10*x+y
#
# arr6 = np.fromfunction(f, (4, 3), dtype = int)
# print(arr6)
#
# print(arr6[1,2]) #返回矩阵第1行第2列元素
# print(arr6[0:2,:]) #切片,返回矩阵前两行
# print(arr6[:,1]) #切片,返回矩阵第一列
# print(-1) #切片,返回矩阵最后一行

#数组的运算
arr7 = np.array([[1,4],[3,2]])
arr8 = np.array([[4,5],[6,7]])

arr7-arr8 #矩阵减法
arr7**2 #矩阵内平方
arr7*3 #矩阵内乘法

arr7*arr8 #普通乘法
print(np.dot(arr7, arr8)) #矩阵乘法
print(arr7.T) #转置
print(np.linalg.inv(arr7)) #返回逆矩阵
print(arr7.sum()) #数组元素求和
print(arr7.cumsum(axis = 1)) #按行累计总和

#numpy 通用函数

print(np.exp(arr7)) #指数函数
print(np.sin(arr7)) #正弦函数
print(np.sqrt(arr7)) #开方函数
print(np.add(arr7, arr8)) #数组相加

#数组合并与分割

print(np.vstack((arr7, arr8))) #纵向合并数组
print(np.hstack((arr7, arr8))) #横向合并数组
print(np.hsplit(arr7, 2)) #将数组横分为两部分
print(np.vsplit(arr8, 2)) #将数组纵分为两部分



猜你喜欢

转载自blog.csdn.net/qq_40397452/article/details/80259488
今日推荐