关键词:
目录
1、numpy 的安装
pip install numpy
2、快速入门
2.1 数据类型
用过C语言的基本上都知道是哪几个类型,毕竟python是c 实现的
总结一下:u表示无符号,有符号则没有,中间表示类型类型,最后一个是表示的字节数
2.2 最重要的对象Ndarray 对象
Ndarray 可以理解为Java里面List 的实现,封装了更好的接口和api。
调试看下结构
2.3 副本和视图
副本是一个数据的完整的拷贝,如果我们对副本进行修改,它不会影响到原始数据,物理内存不在同一位置。
视图是数据的一个别称或引用,通过该别称或引用亦便可访问、操作原有数据,但原有数据不会产生拷贝。如果我们对视图进行修改,它会影响到原始数据,物理内存在同一位置。
视图一般发生在:
-
1、numpy 的切片操作返回原数据的视图。
-
2、调用 ndarray 的 view() 函数产生一个视图。
副本一般发生在:
-
Python 序列的切片操作,调用deepCopy()函数。
-
调用 ndarray 的 copy() 函数产生一个副本。
3、numpy 常用操作
1.创建 ndarray
import numpy as np
#将列表和 元组转换为ndarray
x = [1,2,3]
a = np.asarray(x)
print (a)
y = (1,2,3)
b = np.asarray(y)
print (b)
-
遍历ndarray
NumPy 迭代器对象 numpy.nditer( nditer = nd iterator) 提供了一种灵活访问一个或者多个数组元素的方式
import numpy as np
a = np.arange(6).reshape(2,3)
print ('原始数组是:')
print (a)
print ('\\n')
print ('迭代输出元素:')
for x in np.nditer(a):
print (x, end=", " )
print ('\\n')
nditer 的几个参数
order='F' :'C' -- 按行,'F' -- 按列,'A' -- 原顺序,'k' -- 元素在内存中的出现顺序。
op_flags:nditer 将视待迭代遍历的数组为只读对象(read-only),为了在遍历数组的同时,实现对数组元素值得修改,必须指定 read-write 或者 write-only 的模式。
import numpy as np
a = np.arange(6).reshape(2, 3)
print('原始数组是:')
print(a)
print('\\n')
print('迭代输出元素:')
for x in np.nditer(a,order="F",op_flags=['readwrite']):
print(x, end=", ")
x[...]= x * 2
print('\\n 修改后的元素')
print(a)
print('\\n')
输出结果
原始数组是: [[0 1 2] [3 4 5]] 迭代输出元素: 0, 3, 1, 4, 2, 5, 修改后的元素 [[ 0 2 4] [ 6 8 10]]
3.Numpy 数组操作
修改数组形状
翻转数组
numpy.transpose 函数用于对换数组的维度连接数组
分割数组
数组元素的添加与删除
numpy.append 函数在数组的末尾添加值
4、常用函数
NumPy 提供了标准的三角函数:sin()、cos()、tan()。
NumPy 算术函数包含简单的加减乘除: add(),subtract(),multiply() 和 divide()
统计函数
numpy.amin() 和 numpy.amax()
numpy.ptp()函数计算数组中元素最大值与最小值的差(最大值 - 最小值)。
numpy.median() 函数用于计算数组 a 中元素的中位数(中值)
numpy.mean() 函数返回数组中元素的算术平均值。如果提供了轴,则沿其计算。
操作函数
numpy.sort() 函数返回输入数组的排序副本
numpy.argsort() 函数返回的是数组值从小到大的索引值
numpy.lexsort() 用于对多个序列进行排序。把它想象成对电子表格进行排序,每一列代表一个序列,排序时优先照顾靠后的列
#!/usr/bin/env python
# encoding: utf-8
"""
#Author: 香菜
@time: 2021/8/30 0030 下午 10:00
"""
import numpy as np
a = np.arange(6).reshape(2, 3)
print('原始数组是:')
print(a)
# 最小值,可以指定轴
min = np.amin(a)
print("最小值 :" + str(min))
# 最大值与最小值的差
gap = np.ptp(a)
print("最大差 :" + str(gap))
mid = np.median(a)
print("中位数 :" +str(mid))
mean = np.mean(a)
print("平均值 :" +str(mean))
print(np.argsort(a))
5、ndarray和 list的区别
数组元素要求是相同类型,而列表的元素可以是不同类型。
ndarray占用的内存要比列表少
-
数组底层使用C程序编写,运算速度快。
-
数组底层使用C中数组的存储方式(紧凑存储),节省内存空间。
6、总结
numpy 不难,最重要的数据结构就是ndarray ,可以直接当做List使用,然后np 提供了一些列的函数操作
送书活动第一期
《Python数据分析与大数据处理从入门到精通》
全面:数据分析与大数据处理所需的所有技术,包含基础理论、核心概念、实施流程,从编程语言准备、数据采集与清洗、数据分析与可视化,到大型数据的分布式存储与分布式计算等。
(2)深入:一本书讲透1种编程语言和14种数据分析与大处理工具,以及大数据分析技术及项目开发方法。
(3)丰富:包含45个“新手问答”、17个章节的“实训”、3个项目综合实战、50道Python面试题精选。
京东自营购买链接:
https://item.jd.com/12740890.html
当当自营购买链接:
http://product.dangdang.com/28476522.html
大家点赞关注,两天后在留言的同学中抽取送两本书
注:如果中奖了没关注则放弃
深度学习基础之numpy,小白轻松入门numpy,送书了!!!(代码片段)
...门3.Numpy数组操作4、常用函数5、ndarray和list的区别6、总结送书活动第一期1、numpy的安装pipinstallnumpy2、快速入门2.1数据类型用过C语言的基本上都知道是哪几个类型,毕竟python是c实现的总结一下:u表示无符号,有符号... 查看详情
深度学习基础之三分钟轻松搞明白tensor到底是个啥!看不懂的话我倒立洗头~~(代码片段)
...details/119941843https://gamwatcher.blog.csdn.net/article/details/119941843评论包邮送书了!!!深度学习基础之numpy,小白轻松入门numpyhttps://gamwatcher.blog.csdn.net/article/details/120073767https://gamwatcher.blog.csdn.net/article/details/ 查看详情
人工智能时代八大类算法你了解吗?(包邮送书6本)
...习6.自然语言处理7.图像处理8.深度学习9.书籍推荐(包邮送书6本)本文导读从零带你了解人工智能时代需要掌握的8大类算法,包括基础理论、关联规则分析、回归分析、分类分析、聚类分析、集成学习、自然语言处... 查看详情
包邮送书活动20211018期-开奖通知
奖品:包邮实体书参与方式:CSDN点赞评论收藏文章即可参与、或公众号开奖通知方式(老是有人中奖联系不上,我很郁闷):朋友圈、blink、私信、发文抽奖程序说明:https://notomato.blog.csdn.net/article/deta... 查看详情
包邮送书活动20211018期-开奖通知
奖品:包邮实体书参与方式:CSDN点赞评论收藏文章即可参与、或公众号开奖通知方式(老是有人中奖联系不上,我很郁闷):朋友圈、blink、私信、发文抽奖程序说明:https://notomato.blog.csdn.net/article/deta... 查看详情
包邮送书活动20210928期-开奖通知
...a;20210928期】奖品:包邮实体书参与方式:CSDN点赞评论收藏文章即可参与、或公众号开奖通知方式(老是有人中奖联系不上,我很郁闷):朋友圈、blink、私信、发文抽奖文章链接: 【文末送书】知识... 查看详情
包邮送书活动20210928期-开奖通知
...a;20210928期】奖品:包邮实体书参与方式:CSDN点赞评论收藏文章即可参与、或公众号开奖通知方式(老是有人中奖联系不上,我很郁闷):朋友圈、blink、私信、发文抽奖文章链接: 【文末送书】知识... 查看详情
1万字,阿珊学习笔记《前端基础知识》小白入门导读(建议收藏)
...前端小姐姐,蓝桥签约作者,欢迎点赞、收藏、评论🍅粉丝专属福利:知识体系、面试题库、技术互助、简历模板。文末公众号领取🍅包邮送书(每周1-2次):关注公众号「信息技术智库」回复「... 查看详情
1万字,阿珊学习笔记《前端基础知识》小白入门导读(建议收藏)(代码片段)
...前端小姐姐,蓝桥签约作者,欢迎点赞、收藏、评论🍅粉丝专属福利:知识体系、面试题库、技术互助、简历模板。文末公众号领取🍅包邮送书(每周1-2次):关注公众号「信息技术智库」回复「... 查看详情
包邮送书活动20210924期-开奖通知
【抽奖活动开奖:20210924期】奖品:包邮4本书参与方式:CSDN一键三连文章即可参与、公众号(本次仅CSDN)开奖通知方式(老是有人中奖联系不上,我很郁闷):朋友圈、blink、私信、发文0924期3... 查看详情
包邮送书活动20210924期-开奖通知
【抽奖活动开奖:20210924期】奖品:包邮4本书参与方式:CSDN一键三连文章即可参与、公众号(本次仅CSDN)开奖通知方式(老是有人中奖联系不上,我很郁闷):朋友圈、blink、私信、发文0924期3... 查看详情
本科生学深度学习-史上最容易懂的rnn文章,小白也能看得懂,评论继续送书(代码片段)
目录1、rnn是什么2、原理说明2.1rnn和全连接神经网略的区别2.2RNN简单图解释2.3RNN展开图解释2.4RNN的一些点3、rnn的伪代码表示4、来个小例子5、rnn存在的问题6、总结最近写了一些基础的东西,总是理解性的,没有看到实例... 查看详情
本科生学深度学习-史上最容易懂的rnn文章,小白也能看得懂,评论继续送书(代码片段)
目录1、rnn是什么2、原理说明2.1rnn和全连接神经网略的区别2.2RNN简单图解释2.3RNN展开图解释2.4RNN的一些点3、rnn的伪代码表示4、来个小例子5、rnn存在的问题6、总结最近写了一些基础的东西,总是理解性的,没有看到实例... 查看详情
3t移动硬盘,包邮送一块,让你看片看个够!
最近小白在处理深度学习的数据,发现前两天买的1T的移动硬盘根本不够用,随后又买了一个3T的移动硬盘,终于能够自如的处理数据了!为了感谢所有小伙伴们的支持和信任,我又买了个送你们赠送规则本次... 查看详情
每日一道题,划水有意义,看我不卷死你们(评论送书)
...&总榜前十🏆、HDZ核心组成员。欢迎点赞、收藏、评论🍅粉丝专属福利:知识体系、面试题库、技术互助、简历模板。文末公众号领取🍅包邮送书(每周1-2次):评论本文,我挑3 查看详情
①万字《详解canvasapi画图》小白前端入门教程(建议收藏)(代码片段)
...前端小姐姐,蓝桥签约作者,欢迎点赞、收藏、评论🍅粉丝专属福利:知识体系、面试题库、技术互助、简历模板。文末公众号领取🍅包邮送书(每周1-2次):点赞、收藏、评论本文章即可参与或... 查看详情
①万字《详解canvasapi画图》小白前端入门教程(建议收藏)(代码片段)
...前端小姐姐,蓝桥签约作者,欢迎点赞、收藏、评论🍅粉丝专属福利:知识体系、面试题库、技术互助、简历模板。文末公众号领取🍅包邮送书(每周1-2次):点赞、收藏、评论本文章即可参与或... 查看详情
免费送书,5本,关于架构的(无任何套路)
...时也为大伙带来了一些福利,抽奖免费送出5本(包邮),无任何套路。新书上架:《微服务架构深度解析》书讲了些啥?▊ 微服务架构理论▊ 使用微服务构建业务应用▊ 微服务架构之SpringCloud技术生态... 查看详情