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 ...
随机推荐
- javascript获取时间差
function GetDateDiff(startTime, endTime, diffType) { //将xxxx-xx-xx的时间格式,转换为 xxxx/xx/xx的格式 startTime ...
- 【Lua】LuaForWindows_v5.1.4-46安装失败解决方案
下个补丁vcredist_x86.exe 可以到下面连接下载: https://download.csdn.net/download/tvcctv27tv/10344318
- Springmvc 上传文件MultipartFile 转File
转自:http://blog.csdn.net/boneix/article/details/51303207 业务场景:ssm框架 上传文件到应用服务器过程中要传到专有的文件服务器并返回url进行其 ...
- Java 通配符匹配查找文件
比较了一下Java正则表达式与通配符之间的差别,很简单的进行了一下转化就行了.此外要注意String的replace和replaceAll的用法的含义,不要搞错了. 字符串匹配例子 String s ...
- Nginx配置站点适配PC和手机
考虑到站点的在多种设备下的兼容性,有非常多站点会有手机版和电脑版两个版本号.訪问同一个站点URL,当服务端识别出用户使用电脑訪问.就打开电脑版的页面,用户假设使用手机訪问,则会得到手机版的页面. 1. ...
- ThreadLocal MDC
因为MDC底层是用ThreadLocal实现的,所以这里补充一些和ThreadLocal相关的知识点. 1.ThreadLocal的三个层次 关于ThreadLocal有三个层次,可以按照这三个层次去 ...
- java 将数字转成成16进制
java 将数字转成成16进制 CreationTime--2018年6月11日17点11分 Author:Marydon 1.前提 数字必须是byte类型,即[-128,127] 2.代码实现 ...
- oracle 判断字符串是否包含指定内容
1.情景展示 如何将表中的包含特殊字符的脏数据查出来? 2.instr()函数 语法: instr(string, substring[, start_position[, th_appearan ...
- nginx 代理静态资源报 403
用tomcat跑了一个上传服务,文件上传到指定nginx的html目录,用nginx来代理静态资源,结果上传能够成功,访问却报403. 解决办法,将html的拥有者改成nobody: chown -R ...
- SpringMVC 参数中接收数组、List写法
本文使用SpringMVC版本: org.springframework:spring-web:4.3.9.RELEASE 写法及说明(示例代码的类上的注解是@RestController,所以不需要 ...