没有合适的资源?快使用搜索试试~ 我知道了~
Python数据分析–科学计算工具Numpy通用函数(持续更新中)
4 下载量 63 浏览量
2020-12-21
20:40:30
上传
评论
收藏 210KB PDF 举报
温馨提示
试读
4页
前面我们讲了科学计算工具Numpy的基础数据结构,不知道看过的小伙伴学习的咋样,今天呢我们继续上一节的内容讲一下Numpy的通用函数,如果有小伙伴以后想要做数据分析和数据可视化,Numpy这部分还是非常重要的,有必要好好学一下,其实学习本来就是一个很枯燥的过程,我开始学习的时候也是断断续续的,最终坚持下来的原因是自己第一次参加学校组织的数学建模时做数据分析的时候感觉自己用的方法太笨速度太慢了,拖了整个队伍的后腿,所以从第一次参加数学建模之后我就每天都坚持学习了,现在因为疫情的原因在家没事干,所以把自己的学习过程写到这里,一方面呢是想给自己留下一些记录性的东西,另一方面还是有一点点私心的,希望能
资源推荐
资源详情
资源评论
Python数据分析数据分析–科学计算工具科学计算工具Numpy通用函数(持续更新中)通用函数(持续更新中)
前面我们讲了科学计算工具Numpy的基础数据结构,不知道看过的小伙伴学习的咋样,今天呢我们继续上一节的内容讲一下Numpy的通用函数,如果有小伙伴以后想要做数据分析和
数据可视化,Numpy这部分还是非常重要的,有必要好好学一下,其实学习本来就是一个很枯燥的过程,我开始学习的时候也是断断续续的,最终坚持下来的原因是自己第一次参加
学校组织的数学建模时做数据分析的时候感觉自己用的方法太笨速度太慢了,拖了整个队伍的后腿,所以从第一次参加数学建模之后我就每天都坚持学习了,现在因为疫情的原因在
家没事干,所以把自己的学习过程写到这里,一方面呢是想给自己留下一些记录性的东西,另一方面还是有一点点私心的,希望能收割一小批跟我一样喜欢数据分析数据可视化的同
学做粉丝,哈哈O(∩_∩)O哈哈~扯远了扯远了,我们还是继续今天的学习吧
Numpy通用函数非常多,限于篇幅原因,在这里我们只讲一些基础函数。
((1)数组形状)数组形状—.T/.reshape()/.resize()
首先来看数组转置函数—-.T,如果原数组的形状是52
,则转置后数组形状为
25,这个我们在线性代数里面都学过,O(∩_∩)O哈哈~,这里要注意一维数组转置后仍然是一维数组哦
import numpy as np #导入numpy包并命名为np
ar1 = np.arange(10)#arange()生成一维数组,元素值为0-9
ar2 = np.ones((5,2))#ones()生成5*2数组,元素值均为1
print(ar1,'',ar1.T)#输出ar1和ar1转置后的数组,.T函数为数组转置
print(ar2,'',ar2.T)#输出ar1和ar1转置后的数组,.T函数为数组转置
print('------')
输出结果:
再来看一个比较霸气的函数reshape(),为什么说它霸气呢,因为它直接就把原数组的形状改变了,毫无商量可言,来看代码~
ar1 = np.arange(10)
ar3 = ar1.reshape(2,5) # 用法1:直接将已有数组改变形状,要注意改变形状后元素总个数是不能变的
ar4 = np.zeros((4,6)).reshape(3,8) # 用法2:生成数组后直接改变形状
ar5 = np.reshape(np.arange(12),(3,4)) # 用法3:参数内添加数组,目标形状
print(ar1,'',ar3)
print(ar4)
print(ar5)
输出结果:
效果还是非常的显著霸气滴
再来看一个更厉害的函数resize(),上面的reshape()函数呢虽然可以改变数组形状,但是改变前后数组的元素个数还是不能随便变化的,resize()函数就不一样了,我不管你
原来数组有几个元素,我要你有几个你就要有几个,听起来是不是有一点霸气总裁范儿O(∩_∩)O哈哈~
ar6 = np.resize(np.arange(5),(3,4))#本来生成的数组是5个元素,新数组需要12个元素,会自动重复填充所需要元素
ar7=np.resize(np.arange(12),(2,2))#本来生成数组是12个元素,新数组需要4个元素,会自动删掉多余元素
print(ar6)
print(ar7)
输出结果:
这里要注意.T/.reshape()/.resize()这三个函数都是生成新的数组,原数组不会改变。
((2)数组的复制)数组的复制
讲完数组的形状我们再来看一下数组的复制,这里跟我们之前讲的元素复制方法是一样的,一种是直接复制,另一种通过copy()函数
ar1 = np.arange(10)#创建数组ar1
ar2 = ar1#直接复制,ar2=ar1
print(ar2 is ar1)#判断ar2是否与ar1是相同数组
print(ar1,ar2)#输出ar1和ar2
ar1[2] = 9#改变ar1数组的值
print(ar1,ar2)#再次输出两个数组
输出结果:
观察输出结果,我们可以看到,print(ar2 is ar1)的值是True,也就是说这种复制方法导致ar2和ar1是相同的元素,回忆Python的赋值逻辑,两个数组指向内存中的同一个值,所以ar2
会随着ar1的改变而改变,因此,ar1改变之后,ar2的输出结果与ar1是一样的。
ar3 = ar1.copy()#通过copy()函数复制
print(ar3 is ar1)#判断ar3是否与ar1是相同数组
print(ar1,ar3)#输出ar1和ar3
ar1[0] = 9#改变ar1数组的值
print(ar1,ar3)#再次输出ar1和ar3
输出结果:
资源评论
weixin_38701156
- 粉丝: 5
- 资源: 957
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功