numpy基本知识
"""
np.array
object 数组或嵌套的数列
dtype 数组元素的数据类型,可选
copy 对象是否需要复制,可选
order 创建数组的样式,C为行方向,F为列方向,A为任意方向(默认)
subok 默认返回一个与基类类型一致的数组
ndmin 指定生成数组的最小维度
"""
#
# num = np.array([[x * x for x in range(10)], [x for x in range(20, 30)]], dtype=np.float32)
# print num.ndim
# print num.shape
# print num.size
# print num.dtype
# print num.itemsize
# print num.flags
# # print num.data # num = np.empty([4, 3], dtype=np.int32, order="F")
# print num # num = np.zeros([4, 3], order="F")
# print num # num = np.ones([4, 3], order="C")
# print num # asarray a 可以是列表 元祖 多维数组 # lis = [x for x in range(10)]
# num = np.asarray(a=lis, dtype=None, order=None)
# print num
#
# # Python2 frombuffer
# s = 'Hello World'
# a = np.frombuffer(s, dtype='S1')
# print a
# # Python3 字符需要转换为bytestrint
#
# s = b'Hello World'
# a = np.frombuffer(s, dtype='S1')
# print a
#
# # 使用迭代器创建 ndarray
# x = np.fromiter(iter(range(3)), dtype=float)
# print x """
numpy.arange
start 起始值,默认为0
stop 终止值(不包含)
step 步长,默认为1
dtype 返回ndarray的数据类型,如果没有提供,则会使用输入数据的类型。 """ # num = np.arange(5)
# print num
#
# num = np.arange(5, 20, 5)
# print num """
numpy.linspace
numpy.linspace 函数用于创建一个一维数组,数组是一个等差数列构成的
参数 描述
start 序列的起始值
stop 序列的终止值,如果endpoint为true,该值包含于数列中
num 要生成的等步长的样本数量,默认为50
endpoint 该值为 ture 时,数列中中包含stop值,反之不包含,默认是True。
retstep 如果为 True 时,生成的数组中会显示间距,反之不显示。
dtype ndarray 的数据类型 """
# num = np.linspace(0, 10, num=3, endpoint=True, retstep=False, dtype=None)
# print num
#
# num = np.linspace(10, 20, 5, endpoint=False)
# print num """
numpy.logspace
numpy.logspace 函数用于创建一个于等比数列。格式如下:
np.logspace(start, stop, num=50, endpoint=True, base=10.0, dtype=None)
base 参数意思是取对数的时候 log 的下标。 参数 描述
start 序列的起始值为:base ** start
stop 序列的终止值为:base ** stop。如果endpoint为true,该值包含于数列中
num 要生成的等步长的样本数量,默认为50
endpoint 该值为 ture 时,数列中中包含stop值,反之不包含,默认是True。
base 对数 log 的底数。
dtype ndarray 的数据类型
"""
# num = np.logspace(3, 50, 20, base=2)
# print num
# """
NumPy 切片和索引
ndarray对象的内容可以通过索引或切片来访问和修改,与 Python 中 list 的切片操作一样。
ndarray 数组可以基于 0 - n 的下标进行索引,
切片对象可以通过内置的 slice 函数,并设置 start, stop 及 step 参数进行,从原数组中切割出一个新数组。
"""
# a = np.arange(10)
# s = slice(2, 7, 2) # 从索引 2 开始到索引 7 停止,间隔为2
# print "origin:", a
# print (a[s])
# print a[1] # a = np.array([[1, 2, 3], [3, 4, 5], [4, 5, 6]])
# print a
# print(a[2:])
# print(a[2:, 1])
# print(a[2:, 1:]) a = np.array([[1, 2, 3], [3, 4, 5], [4, 5, 6]])
print (a[..., 1:]) # 第2列元素
# print (a[1, ...]) # 第2行元素
# print (a[..., 1:]) # 第2列及剩下的所有元素
numpy基本知识的更多相关文章
- NumPy 基础知识·翻译完成
原文:Numpy Essentials 协议:CC BY-NC-SA 4.0 欢迎任何人参与和完善:一个人可以走的很快,但是一群人却可以走的更远. 在线阅读 ApacheCN 面试求职交流群 7241 ...
- 【Numpy】python机器学习包Numpy基础知识学习
一.安装:在之前的博客中已经写过:http://www.cnblogs.com/puyangsky/p/4763234.html 二.python数组切片知识: python中序列类有list.str ...
- NumPy基础知识图谱
所有内容整理自<利用Python进行数据分析>,使用MindMaster Pro 7.3制作,emmx格式,源文件已经上传Github,需要的同学转左上角自行下载.该图谱只是NumPy的基 ...
- python科学计算库的numpy基础知识,完美抽象多维数组(原创)
#导入科学计算库 #起别名避免重名 import numpy as np #小技巧:从外往内看==从左往右看 从内往外看==从右往左看 #打印版本号 print(np.version.version) ...
- python之numpy包知识要点总结
一.简介 numpy主要是用来存储和处理大型矩阵,提供了一种存储单一数据类型的多维数组对象------ndarray.还提供了多种运算函数,能够完成数据计算和统计分析,是数据分析的重要工具包. 二.数 ...
- Numpy 基础知识
1.使用ipython --pylab 自动加载 Numpy.Scipy.Matplotlib模块. 创建数组a = arange(10) b = arange(10,dtype='f')c = ar ...
- numpy基础知识
官网简介: http://www.numpy.org/ ndarry基本属性 ndarry是Numpy中的N维数组对象(N dimentional arrya,ndarray) ndarry中所有的元 ...
- NumPy基础知识:数组和矢量计算
NumPy 的ndarray:一种多维数组对象 该对象是一个快速且灵活的大数据容器,可以利用这种数组对整个数据进行科学计算,语法跟标量元素之间的计算一样. 创建ndarray的方法: array函数: ...
- Python——Numpy基础知识(一)
一.Numpy的引入 1.标准的Python 中用列表(list)保存一组值,可以当作数组使用.但由于列表的元素可以是任何对象,因此列表中保存的是对象的指针.对于数值运算来说,这种结构显然比较浪费内存 ...
随机推荐
- POJ 2778 DNA Sequence (ac自动机+矩阵快速幂)
DNA Sequence Description It's well known that DNA Sequence is a sequence only contains A, C, T and G ...
- vue 模块化 路由拆分配置
一.普通路由配置 通常我们编写vue路由配置都会写在 /src/router/index.js 这个文件下.但是,随着我们的vue项目变得越来越大后,路由也随之变得越来越多,出现的问题就是我们所有的路 ...
- vue-learning:13 - js - vue作用域概念:全局和局部
目录 全局作用域:Vue对象 全局api 局部作用域: 实例对象vm 实例api 组件component 组件配置选项 在引入Vue文件时,就相当于拥有了一个全局Vue对象. 在var vm = ne ...
- [板子]SPFA算法+链式前向星实现最短路及负权最短路
参考:https://blog.csdn.net/xunalove/article/details/70045815 有关SPFA的介绍就掠过了吧,不是很赞同一些博主说是国内某人最先提出来,Bellm ...
- iDrac6 虚拟控制台 连接失败
最近给公司的服务器升级硬件(其实是服务器要淘汰了,公司就不管了,爱怎么折腾就怎么折腾,只要不坏就行) 服务器配置:Dell PowerEdge R610,E5606 x2(双路2.13G 4核4线程) ...
- python 可变参数示例
练习1:请使用**kw的方式,把可变的所有参数, # 算一字典的value乘积 def fun(**kw): product =1 for k ,v in kw.items(): if isinsta ...
- JavaScript模块化演变 CommonJs,AMD, CMD, UMD(一)
原文链接:https://www.jianshu.com/p/33d53cce8237 原文系列2链接:https://www.jianshu.com/p/ad427d8879cb 前端完全手册: h ...
- 22.BASE_DIR,os,sys
原文: BASE_DIR演示 想在bin里调用main里的方法.需要找到目录. import sys,os BASE_DIR = os.path.dirname(os.path.dirname(os. ...
- hdu3499---玄学的分层图
枚举固然可以,但是我还是想看看分层图.... 如本题所述 ,从上图到下图就是一个折扣的过程,上部分只有一种办法下去,下部分图没有办法去上面,该模型十分的巧妙啊!!! 下面我来演示一下自己改的样例吧 紫 ...
- Java迭代器源码解析
private class Itr implements Iterator<E> { int cursor; // 调用next方法返回的元素的索引 int lastRet = -1; / ...