numpy 基于现有数据创建ndarray(from existing data)
1 numpy.array
array(object[, dtype=None, copy=True, order='K', subok=False, ndmin=0])
2 numpy.asarray
asarray(a[, dtype=None, order=None])
将(列表、元组及其嵌套结构)数据a转换成ndarray
返回ndarray数据
1 当a为元组、列表array时
返回值值与输入值不相同
import numpy as np a = [1,2] b = np.asarray(a) print(a) #[1, 2] print(b) #[1 2]
2 当a为ndarray且不做任何改变时
原数据a与返回值为同一个地址
import numpy as np a = np.array([1,2]) b = np.asarray(a) a += 2 print(a) #[3 4] print(b) #[3 4] print(a is b) #True
3 当a为ndarray且改变数据结构时
复制一份数据
import numpy as np a = np.array([1,2],dtype=np.float32) b = np.asarray(a,dtype='i4') a += 2 print(a) #[3. 4.] print(b) #[1 2] print(a is b) #False
总之,可理解为不改变元数据时,为同一个数据地址,当改变元数据时,返回值会复制元数据并进行asarray格式化。
3 numpy.frombuffer
frombuffer(buffer[, dtype=float, count=-1, offset=0])
将缓冲区解释为一维数组。
暴露缓冲区接口的任何对象都用作参数来返回ndarray。
buffer - 一个暴露在缓冲取接口的对象
dtype - 返回ndarray的数据类型,默认float
count - 读取数据数量,默认-1,也即读取所有数据 int数据类型
offset - 读取数据的起始位置(偏移量)
返回值ndarray
import numpy as np s = 'hello world' a = np.frombuffer(s,dtype='S1',count=5,offset=6) print(a) # 报错:AttributeError: 'str' object has no attribute '__buffer__'
一直没有弄明白,一直报错,要不就是 itemsize cannot be zero in type
请赐教,谢谢!
4 numpy.frombuffer
fromiter(iterable, dtype[, count=-1])
将一个可迭代对象构建成一个ndarray对象,返回一个新的一维数组
count - 读取数据的量,当为默认值-1时,意味读取所有数据。
import numpy as np iterable = (x*x for x in range(5)) a = np.fromiter(iterable,float) print(a) #[ 0. 1. 4. 9. 16.]
参考:NumPy - 来自数值范围的数组,和官方文档(numpy-ref-14.5)3.1.2 From existing data
numpy 基于现有数据创建ndarray(from existing data)的更多相关文章
- numpy 基于数值范围创建ndarray()
基于数值范围创建函数创建ndarray 1 numpy.arange arange([start=0,] stop[, step=1,][, dtype=None]) >>> np. ...
- NumPy来自现有数据的数组
NumPy - 来自现有数据的数组 这一章中,我们会讨论如何从现有数据创建数组. numpy.asarray 此函数类似于numpy.array,除了它有较少的参数. 这个例程对于将 Python 序 ...
- NumPy 基于数值区间创建数组
来源:Python Numpy 教程 章节 Numpy 介绍 Numpy 安装 NumPy ndarray NumPy 数据类型 NumPy 数组创建 NumPy 基于已有数据创建数组 NumPy 基 ...
- (18)ASP.NET Core 基于现有数据库创建EF模型(反向工程)
1.简介 Entity Framework Core可通过数据库提供给应用程序的插件访问许多不同的数据库.我们可以通过使用Entity Framework Core构建执行基本数据访问的ASP.NET ...
- NumPy 基于已有数据创建数组
原文:Python Numpy 教程 章节 Numpy 介绍 Numpy 安装 NumPy ndarray NumPy 数据类型 NumPy 数组创建 NumPy 基于已有数据创建数组 NumPy 基 ...
- How to: Generate XPO Business Classes for Existing Data Tables 如何:为现有数据表生成 XPO 业务类
From the Tutorial and other documentation sources, you learned how to create business classes for yo ...
- Sql server中用现有表中的数据创建Sql的Insert插入语句
之前,在Codeproject发表过一篇关于用现有表中数据创建Insert的Sql语句的存储过程,今天将其搬到这里来,注意本存储过程仅适用于SQL SERVER. 介绍 一些时候,你想导出一些现有表中 ...
- Python数据分析与展示[第三周](pandas简介与数据创建)
第三周的课程pandas 分析数据 http://pandas.pydata.org import pandas as pd 常与numpy matplotlib 一块定义 d=pd.Series(r ...
- 用NumPy genfromtxt导入数据
用NumPy genfromtxt导入数据 NumPy provides several functions to create arrays from tabular data. We focus ...
随机推荐
- SliTaz 5.0 截图
- 【转】使用 Android 的日志工具LogCat
Android中的日志工具类是 Log(android.util.Log),这个类中提供了如下几个方法来供我们打印日志. 1. Log.v() 这个方法用于打印那些最为琐碎的,意义最小的日志信息 ...
- UIFont字体大全
原文地址:UIFont 设置字体作者:青竹居士 http://deep-fish.iteye.com/blog/1678874UIFont 设置字体 1 label.font = [UIFon ...
- PHP Warning: DOMDocument::loadHTML(): htmlParseEntityRef: expecting ';' in Entity,
$html = file_get_contents("http://www.somesite.com/"); $dom = new DOMDocument(); $dom-> ...
- Hotmail Smtp邮箱发送的端口
1.最近有项目需求做监控报警. 2.使用Smtp发邮件时,网上找了一大堆,Smtp服务是:smtp.live.com 端口是:25或587,试了好多次都不行.原来端口是465. 3.发送时,我启用 ...
- bat脚本禁用和开启本地连接
netsh interface set interface name="本地连接" admin=disabled //禁用本地连接 netsh interface set inte ...
- 跟踪 Ring3 - Ring0 的运行流程
理论知识 SYSENTER 指令是在 Inter Pentium(R) Ⅱ 处理器上作为"高速系统调用"功能的一部分被首次引用的. SYSENTER 指令进行过专门的优化,能够以最 ...
- Grunt、Gulp和Webpack对比
1.Grunt处理Sass转换成CSS过程 2.Gulp处理Sass转换成CSS过程 3.Webpack执行原理 4.区别 (1)grunt和gulp都类似于webapck的中的scripts,属于任 ...
- jquery append()方法与html()方法使用方法差别
append(content):方法在被选元素的结尾(仍然在内部)插入指定内容,有非常多朋友认为append与html差点儿相同.其他从英文意义上append是在原有基础上添加,而html中是替换当前 ...
- 【DB2】性能管理视图
1.性能管理部分视图列表 可以使用命令db2 list tables for schema sysibmadm获取所有的性能管理视图 视图名称 模式名 ...