python numpy库--学习

简介: python numpy库--学习

import numpy as np

创建一个长度为10的空向量:



Z = np.zeros(10)
print(Z)


如何找到任何一个数组的内存大小



Z = np.zeros((10,10))
print("%d bytes" % (Z.size * Z.itemsize))


创建一个值域范围从10到49的向量



# Z = np.arange(10,50)
# print(Z)


反转一个向量(第一个元素变为最后一个)



# Z = np.arange(50)
# Z = Z[::-1]
# print(Z)


创建一个 3x3 并且值从0到8的矩阵



# Z = np.arange(9).reshape(3,3)
# print(Z)


找到数组[1,2,0,0,4,0]中非0元素的位置索引



nz = np.nonzero([1,2,0,0,4,0])


创建一个 3x3 的单位矩阵



# Z = np.eye(3)


创建一个二维数组,其中边界值为1,其余值为0



# Z = np.ones((10,10))
# Z[1:-1,1:-1] = 0


对于一个存在在数组,如何添加一个用0填充的边界



# Z = np.ones((5,5))
# Z = np.pad(Z, pad_width=1, mode='constant', constant_values=0)
# print(Z)


对一个5x5的随机矩阵做归一化



# Z = np.random.random((5,5))
# Zmax, Zmin = Z.max(), Z.min()
# Z = (Z - Zmin)/(Zmax - Zmin)
# print(Z)


创建一个将颜色描述为(RGBA)四个无符号字节的自定义dtype



# color = np.dtype([("r", np.ubyte, 1),
#                   ("g", np.ubyte, 1),
#                   ("b", np.ubyte, 1),
#                   ("a", np.ubyte, 1)])
# color


一个5x3的矩阵与一个3x2的矩阵相乘,实矩阵乘积是什么



# Z = np.dot(np.ones((5,3)), np.ones((3,2)))
# print(Z)


给定一个一维数组,对其在3到8之间的所有元素取反



# Z = np.arange(11)
# Z[(3 < Z) & (Z <= 8)] *= -1
# print(Z)



如何从零位对浮点数组做舍入



# Z = np.random.uniform(-10,+10,10)
# print (np.copysign(np.ceil(np.abs(Z)), Z))


如何找到两个数组中的共同元素



# Z1 = np.random.randint(0,10,10)
# Z2 = np.random.randint(0,10,10)
# print(np.intersect1d(Z1,Z2))


如何得到昨天,今天,明天的日期



# yesterday = np.datetime64('today', 'D') - np.timedelta64(1, 'D')
# today     = np.datetime64('today', 'D')
# tomorrow  = np.datetime64('today', 'D') + np.timedelta64(1, 'D')
# print ("Yesterday is " + str(yesterday))
# print ("Today is " + str(today))
# print ("Tomorrow is "+ str(tomorrow))


创建一个长度为10的随机向量,其值域范围从0到1,但是不包括0和1



# Z = np.linspace(0,1,11,endpoint=False)[1:]
# print (Z)


将笛卡尔坐标下的一个10x2的矩阵转换为极坐标形式



# Z = np.random.random((10,2))
# X,Y = Z[:,0], Z[:,1]
# R = np.sqrt(X**2+Y**2)
# T = np.arctan2(Y,X)
# print (R)
# print (T)


创建一个长度为10的向量,并将向量中最大值替换为1



# Z = np.random.random(10)
# Z[Z.argmax()] = 0
# print (Z)


如何将32位的浮点数(float)转换为对应的整数(integer)



# Z = np.arange(10, dtype=np.int32)
# Z = Z.astype(np.float32, copy=False)
# print (Z)


减去一个矩阵中的每一行的平均值



 # X = np.random.rand(5, 10)
# # Recent versions of numpy
# Y = X - X.mean(axis=1, keepdims=True)
# print(Y)


根据索引列表(I),如何将向量(X)的元素累加到数组(F)



# X = [1,2,3,4,5,6]
# I = [1,3,9,3,4,1]
# F = np.bincount(I,X)
# print (F)


考虑一个维度(5,5,3)的数组,如何将其与一个(5,5)的数组相乘



# A = np.ones((5,5,3))
# B = 2*np.ones((5,5))
# print (A * B[:,:,None])


如何通过滑动窗口计算一个数组的平均数



# def moving_average(a, n=3) :
#     ret = np.cumsum(a, dtype=float)
#     ret[n:] = ret[n:] - ret[:-n]
#     return ret[n - 1:] / n
# Z = np.arange(20)
# print(moving_average(Z, n=3))


如何对布尔值取反,或者原位(in-place)改变浮点数的符号(sign)



# Z = np.random.randint(0,2,100)
# np.logical_not(Z, out=Z)


如何找到一个数组中出现频率最高的值



# Z = np.random.randint(0,10,50)
# print (np.bincount(Z).argmax())


对于一个一维数组X,计算它boostrapped之后的95%置信区间的平均值



# X = np.random.randn(100) # random 1D array
# N = 1000 # number of bootstrap samples
# idx = np.random.randint(0, X.size, (N, X.size))
# means = X[idx].mean(axis=1)
# confint = np.percentile(means, [2.5, 97.5])
# print (confint)


相关文章
|
13天前
|
机器学习/深度学习 存储 数据挖掘
Python图像处理实用指南:PIL库的多样化应用
本文介绍Python中PIL库在图像处理中的多样化应用,涵盖裁剪、调整大小、旋转、模糊、锐化、亮度和对比度调整、翻转、压缩及添加滤镜等操作。通过具体代码示例,展示如何轻松实现这些功能,帮助读者掌握高效图像处理技术,适用于图片美化、数据分析及机器学习等领域。
53 20
|
3天前
|
测试技术 Python
【03】做一个精美的打飞机小游戏,规划游戏项目目录-分门别类所有的资源-库-类-逻辑-打包为可玩的exe-练习python打包为可执行exe-优雅草卓伊凡-持续更新-分享源代码和游戏包供游玩-1.0.2版本
【03】做一个精美的打飞机小游戏,规划游戏项目目录-分门别类所有的资源-库-类-逻辑-打包为可玩的exe-练习python打包为可执行exe-优雅草卓伊凡-持续更新-分享源代码和游戏包供游玩-1.0.2版本
【03】做一个精美的打飞机小游戏,规划游戏项目目录-分门别类所有的资源-库-类-逻辑-打包为可玩的exe-练习python打包为可执行exe-优雅草卓伊凡-持续更新-分享源代码和游戏包供游玩-1.0.2版本
|
1月前
|
XML JSON 数据库
Python的标准库
Python的标准库
175 77
|
1月前
|
Python 容器
Python学习的自我理解和想法(9)
这是我在B站跟随千锋教育学习Python的第9天,主要学习了赋值、浅拷贝和深拷贝的概念及其底层逻辑。由于开学时间紧张,内容较为简略,但希望能帮助理解这些重要概念。赋值是创建引用,浅拷贝创建新容器但元素仍引用原对象,深拷贝则创建完全独立的新对象。希望对大家有所帮助,欢迎讨论。
|
29天前
|
Python
Python学习的自我理解和想法(10)
这是我在千锋教育B站课程学习Python的第10天笔记,主要学习了函数的相关知识。内容包括函数的定义、组成、命名、参数分类(必须参数、关键字参数、默认参数、不定长参数)及调用注意事项。由于开学时间有限,记录较为简略,望谅解。通过学习,我理解了函数可以封装常用功能,简化代码并便于维护。若有不当之处,欢迎指正。
|
20天前
|
数据可视化 数据挖掘 大数据
1.1 学习Python操作Excel的必要性
学习Python操作Excel在当今数据驱动的商业环境中至关重要。Python能处理大规模数据集,突破Excel行数限制;提供丰富的库实现复杂数据分析和自动化任务,显著提高效率。掌握这项技能不仅能提升个人能力,还能为企业带来价值,减少人为错误,提高决策效率。推荐从基础语法、Excel操作库开始学习,逐步进阶到数据可视化和自动化报表系统。通过实际项目巩固知识,关注新技术,为职业发展奠定坚实基础。
|
1月前
|
存储 索引 Python
Python学习的自我理解和想法(6)
这是我在B站千锋教育学习Python的第6天笔记,主要学习了字典的使用方法,包括字典的基本概念、访问、修改、添加、删除元素,以及获取字典信息、遍历字典和合并字典等内容。开学后时间有限,内容较为简略,敬请谅解。
|
1月前
|
程序员 Python
Python学习的自我理解和想法(3)
这是学习Python第三天的内容总结,主要围绕字符串操作展开,包括字符串的提取、分割、合并、替换、判断、编码及格式化输出等,通过B站黑马程序员课程跟随老师实践,非原创代码。
|
1月前
|
XML JSON 数据库
Python的标准库
Python的标准库
57 11
|
1月前
|
Python
Python学习的自我理解和想法(7)
学的是b站的课程(千锋教育),跟老师写程序,不是自创的代码! 今天是学Python的第七天,学的内容是集合。开学了,时间不多,写得不多,见谅。

热门文章

最新文章