python中numpy数组的csv文件写入与读取
作者:shangyj17 发布时间:2021-11-26 06:18:20
0.摘要
本文主要介绍numpy库中,csv文件中数据的写入和读取方式。
1.文件写入与读取
写入:
import numpy as np
a = np.arange(0,10000).reshape(100,100)
np.savetxt("temp.csv", a, delimiter=",")
读取:
b = np.loadtxt("temp.csv", delimiter=",")
print(b) #打印b数组
print(max(b.reshape(-1))) #打印b数组中的最大值
print(min(b.reshape(-1))) #打印b数组中的最小值
注意:写入和读取的delimiter参数要保持一致,否则无法正常读取。
2.函数详解-savetxt
savetxt(fname, X, fmt='%.18e', delimiter=' ', newline='\n', header='', footer='', comments='# ', encoding=None)
功能:用于将array类型保存到文本文件中。
参数:
fname : 文件名或者文件句柄。如果文件名以".gz"结尾,则该文件会被自动以gzip形式压缩。当然,"loadtxt"也可以解析被压缩的文件。
X : 一维或者二维数组。需要写入文本文件的数据。
fmt : str或者str序列,可选参数。单一格式(%10.5f),序列格式或多重格式字符串,例如。“Iteration %d—%10.5f”,在这种情况下“delimiter”参数被忽略。对于复杂的“X”,“fmt”的合理选择如下:
a) a single specifier, `fmt='%.4e'`, resulting in numbers formatted like `' (%s+%sj)' % (fmt, fmt)`
b) a full string specifying every real and imaginary part, e.g.`' %.4e %+.4ej %.4e %+.4ej %.4e %+.4ej'` for 3 columns
c) a list of specifiers, one per column - in this case, the real and imaginary part must have separate specifiers, e.g. `['%.3e + %.3ej', '(%.15e%+.15ej)']` for 2 columns
delimiter :str,可选参数。用于分隔列的字符串或者字符。
newline :str,可选参数。用于分隔行的字符串或者字符。
header : str,可选参数。将被添加到文件开头的字符串。
footer : str,可选参数。将被添加到文件结尾的字符串。
comments : str,可选参数。将作为前缀被添加到"header" 和 "footer"的字符串,用于将这部分标记为注释内容。默认是"#"。
encoding : {None, str}, 可选参数。用于对输出文件的编码。不适用与输出流。如果编码格式不是"bytes" 或者"latin1",那么将无法正常load。
3.函数详解-loadtxt
loadtxt(fname, dtype=<class 'float'>, comments='#', delimiter=None, converters=None, skiprows=0, usecols=None, unpack=False, ndmin=0, encoding='bytes')
功能:从文件中load数据。注意:文件中的每一行数据的数量需要相同。
参数:
fname:文件,str或者是pathlib.Path。
dtype:返回的数据类型,默认float。
comments:str,可选参数。注释说明。默认是"#"。
delimiter:str,可选参数。数值的分隔符,默认是空格。
skiprows:int,可选参数。跳过的行数,默认是0。
usecols:int或者序列,可选参数。读取的列数,0为起点。例如,当usecols=(1,4,5),读取第2列,第5列和第6列。默认值是读取所有列。
unpack:bool型,可选参数。若为为True,可以将数据进行拆分,例如x, y, z = loadtxt(...)。默认值是False。
encoding : 用于对输入文件的解码。
来源:https://blog.csdn.net/qq_17753903/article/details/88603758
猜你喜欢
- 开放源代码社区为了扩展MySQL的使用范围,开发出了.Net框架(.NET Framework)中可以使用的数据库连接器。我们就来学习一下如
- 对于 link 元素 和 style 元素 我相信大家都比较了解,但对于他们的出现位置可能有误解。在 淘宝 的所有频道中出现这样一个问题:频
- 数据库复制就是由两台服务器,主服务器和备份服务器,主服务器修改后,备份服务器自动修改,在以前的文章中已经做了详细的说明,这里就不在重复.使用
- 管理SQL Server内在的帐户和密码时,我们很容易认为这一切都相当的安全。但实际上并非如此。在这里,我们列出了一些对于SQL Serve
- MySQL插件式存储引擎是MySQL数据库服务器中的组件,负责为数据库执行实际的数据I/O操作,并能允许和强制执行面向特殊应用需求的特定特性
- 1.导言现今的公司需要易访问的和可用性好的商业数据,以便他们可以在全球市场中获得一席之地。与易访问数据的这个需求相呼应的,关系数据库和分析数
- MaxDB是MySQL AB公司通过SAP认证的数据库。MaxDB数据库服务器补充了MySQL AB产品系列。某些MaxDB特性在MySQL
- vbscript中,错误处理使用on error resume next来完成,如果在你的代码里加入这一句,在这句之后的其他代码如果出现错误
- 10月15日,Adobe公司正式面向全球公布了第10个版本的Flash播放器,这一版本播放器的昵称是大家已经所熟知的“宇宙”。这是一款增加了
- 这个跟ping那个差不多,ping的那个脚本就是通过这个改了下,大体一致,不过telnet的不需要判断返回的字符串。快一些这里具体需要tel
- 如何制作一个从Access数据库中读取记录的下拉菜单?看看这个例子:<% SQL = "SEL
- 弄个随机数的东西,直接从网上找了一个现成的,简单看了两眼,感觉算法应该是对的,但今天测试下来,是不对的;网上大多数人用的写法是这样的:fun
- FCKeditor至今已经到了2.3.1版本了,对于国内的WEB开发者来说,也基本上都已经“闻风知多少”了,很多人将其融放到自己的项目中,更
- 前言本文介绍的主要内容是 Redux-Toolkit 在 React + TypeScript 大型应用中的实践,主要解决的问题是使用 cr
- 问题你有50枚金币,需要分配给以下几个人:Matthew,Sarah,Augustus,Heidi,Emilie,Peter,Giana,A
- SQL Server数据库查询速度慢的原因有很多,常见的有以下几种:1、没有索引或者没有用到索引(这是查询慢最常见的问题,是程序设计的缺陷)
- 最近没事,写了个在项目经常要取城市或省份名的方法,所以改成了一个类.方便以后调用//****************************
- 要想在不宽裕的页面展现丰富的内容,现在通用的做法使用tab,在一块区域通过tab切换来更换该区域的内容。这篇文章分析了tab设计很在理,今天
- 提到SQL Server 2005证书,很多人可能以为它只是用来在传输数据的时候起到加密作用的,但在深入了解后,你会发现它的用处还有很多。
- 延迟是什么defer即延迟语句,极个别的情况下,Go才使⽤defer、panic、recover这种异常处理形式。defer可以延迟函数、延