当前位置: 首页 > news >正文

Python中numpy.loadtxt()函数的用法

numpy模块的loadtxt()函数用于快速读取简单格式文件的内容,常用于csv文件的读取。

1 loadtxt()函数的格式

loadtxt()函数的格式如图1所示,该函数的返回值是读取到的数据,其类型为numpy.ndarray。

图1 loadtxt()函数的格式

其中,fname表示文件的路径,其它参数均为可选参数。

2 loadtxt()函数的基本用法

在D盘根目录下有一个名为“1.csv”的文件,其内容如图2所示。

图2 “1.csv”的内容

通过loadtxt()函数读取该文件内容的代码如图3所示。

图3 通过loadtxt()函数读取该文件内容的代码

其中,loadtxt()函数的第一个参数表示文件的路径;第二个参数delimiter表示读取到内容的分隔符,因为csv文件使用逗号对数据进行分隔的,因此该参数的值是“,”。data是numpy.ndarray类型的数据。

3 loadtxt()函数的扩展用法

3.1 指定数据类型

通过loadtxt()函数的dtype参数指定读取到的数据类型,该参数默认值是float,即浮点型。

3.1.1 指定相同的数据类型

图4所示代码将读出的数据指定为相同的数据类型。

图4 将读出的数据指定为相同的数据类型的代码

其中,将dtype的值设置为int,表示将所有的数据都指定为整型,此时会有图4所示的红色字体的警告,表示将float转换为int会有数据不精确的情况。

3.1.2 指定不同的数据类型

图5所示代码将读出的数据指定为不同的数据类型。

图5 将读出的数据指定为不同的数据类型的代码

其中,参数dtype用字典进行赋值,该字典中第一个键值对表示读出的散列数据的名称,第二个键值对表示读出的三列数据的类型,分别是字符串、整型和浮点型。

3.2 忽略指定行数

通过图6所示代码忽略文件中指定的行数。

图6 忽略文件中指定的行数的代码

其中,当参数skiprows=1时,表示忽略数据中的第1行;当参数skiprows=2时,表示忽略数据中的第1-2行,因为此时没有读取数据,因此程序会有红色字体的警告。

3.3指定要读取的列

通过图7所示代码指定要读取的列。

图7 指定要读取列的代码

其中,参数usecols指定了要读取的列,该参数的类型是元组,其元素为对应的列,0和2表示读取第1列和第3列的数据。

3.4 对数据进行预处理

通过图8所示代码对读取到的数据进行预处理。

图8 对读取到的数据进行预处理的代码

其中,func()是自定义函数,参数convereters的值是一个字典,该字典的键表示列数,值表示对该列数据进行的预处理。以上代码表示对第2列的数据进行×2的预处理。

3.5 对数据进行解包

通过图9所示代码对读取到的数据进行解包。

图9 对读取到的数据进行解包的代码

其中,参数unpack的值设置为True,对读取到的数据按行进行解包,分别保存到data1、data2和data3中。

http://www.lryc.cn/news/540004.html

相关文章:

  • Windows系统安装GPU驱动/CUDA/cuDNN
  • nessus kali 卸载
  • 使用Geotools读取DEM地形数据实战-以湖南省30米数据为例
  • 基于WebGIS技术的校园地图导航系统架构与核心功能设计
  • 《养生方法》(一)
  • Python常见面试题的详解9
  • MAVSDK - Custom Mavlink处理
  • java每日精进 2.13 MySql迁移人大金仓
  • 【R语言】回归分析与判别分析
  • ES6中Object.defineProperty 的详细用法和使用场景以及例子
  • 揭秘云计算 | 5、关于云计算效率的讨论
  • 【Linux探索学习】第二十七弹——信号(上):Linux 信号基础详解
  • 如何查询网站是否被百度蜘蛛收录?
  • 什么是网络安全审计?网络安全审计的作用...
  • EasyExcel实现excel导入(模版上传)
  • Vue 3最新组件解析与实践指南:提升开发效率的利器
  • 【前端】如何安装配置WebStorm软件?
  • vllm专题(一):安装-GPU
  • php文件包含
  • 升级 SpringBoot3 全项目讲解 — Spring Boot 3 中如何发Http请求?
  • 分类预测 | MFO-LSSVM飞蛾扑火算法优化最小二乘支持向量机多特征分类预测Matlab实现
  • MyBatis Plus核心功能
  • nginx ngx_http_module(10) 指令详解
  • 【ENSP】链路聚合的两种模式
  • Windows环境安装部署minimind步骤
  • 让大模型帮我设计crnn网络及可运行demo,gpt4o豆包qwendeepseek-r1
  • 代码随想录-- 第一天图论 --- 岛屿的数量
  • Mybatis MyBatis框架的缓存 一级缓存
  • Weboffice在线Word权限控制:限制编辑,只读、修订、禁止复制等
  • RT-Thread+STM32L475VET6实现呼吸灯