python中的numpy基本操作

numpy的基本用法

# Author:NDK
# -*- coding:utf-8 -*-
import numpy as np
"""矩阵基本操作"""
# array = np.array([1, 2, 3])
# print(array)
# print(array.ndim)   返回矩阵的维数
# print(array.size)   返回矩阵的元素个数
# a = np.array([2,23,45],dtype=np.int)   生成矩阵,dtype定义类型
# a = np.ones((3,6))  全零矩阵形状用元组传入
# a = np.zeros((3,6))  全一矩阵
# a = np.arange(0,10,2).reshape((1,5))  生成指定范围矩阵
# a = np.linspace(0,10,8)     按指定值第三个参数(8)等分指定范围区域前两个参数(1,10)
# a = np.array([[1,2],
#               [2,4]])
# b = np.arange(4).reshape((2,2))
# c = a*b        矩阵的点乘
# d = np.dot(a,b)    矩阵一般的乘法
# print(a,b)
# print(c)
# print(d)
# print(a**2)       放回矩阵内每个元素的平方构成的矩阵
# 生成(0,1)之间随机数构成的2行4列矩阵
# e = np.random.random((2,4))
# 返回最大值(axis=0代表行,axis=1代表列)
# print(np.max(e,axis=0))
# 返回最小值(axis=0代表行,axis=1代表列)
# print(np.min(e,axis=0))
# 返回累加和(axis=0代表行,axis=1代表列)
# print(np.sum(e,axis=0))
"""矩阵简单计算"""
# a = np.arange(2,14).reshape((3,4))
# print(a)
# print(np.mean(a))   平均值
# print(np.cumsum(a))      返回累加值 [ 2  5  9 14 20 27 35 44 54 65 77 90]
# print(np.diff(a))         返回累差[[1 1 1],[1 1 1],[1 1 1]]由于最后一行没有差的,所以会减少一列
# print(np.nonzero(a))      返回非零的数的下标
# print(np.sort(a))           将矩阵逐行排序(不是整个矩阵排序,仅每一行内排序)
# print(np.transpose(a))              将矩阵a转置
# print(np.clip(a,4,8))        将矩阵小于4的改为4,大于8的改为8
"""矩阵切片"""
# a = np.arange(3,18).reshape((5,3))
# print(a)
# print(a[0])     第0行
# print(a[1][2])   第01行2列
# print(a[0][1:3])   切片:返回0行1和2列
# for row in a:   默认迭代a的行
#     print(row)
# for row in np.transpose(a):   将a转置,迭代a的列
#     print(row)
# for i in a.flat:          迭代a的每一个元素
#     print(i)
#
"""矩阵合并"""
# a = np.array([1,3,4])
# b = np.array([2,5,7])
# # 垂直合并
# c = np.vstack((a,b))
# print(c)
# # 水平合并
# d = np.hstack((a,b))
# print(d)
"""矩阵分割"""
# a = np.arange(12).reshape((3,4))
# print(a)
# # 矩阵分割split要求可以等分,array_split不等分也可以(axis=0表示行,=1表示列)
# print(np.array_split(a,3,axis=0))
"""矩阵的深浅拷贝"""
# a = np.array([4,5,6,7])
# # 浅拷贝
# b = a
# c = b
# a[0] = 13
# # 当改变a是b,c一起改变
# print(a,b,c)          [13  5  6  7] [13  5  6  7] [13  5  6  7]
# print('b是a吗?',b is a)      判断b是否是a 返回True
#        深拷贝
# d = a.copy()
# a[1] = 18
# print(a,d)     [13 18  6  7] [13  5  6  7]  d不在随a的改变而变化
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值