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

十七天-Numpy 学习笔记

Numpy 学习笔记

Numpy 作为 Python 中用于进行科学计算的核心库,提供了高性能的多维数组对象,以及大量用于数组操作的工具。下面围绕 “常量”“数据类型”“时间日期和时间增量” 三个方面,梳理 Numpy 中基本的数据概念和数组创建相关知识。

一、常量

(一)Numpy 中的常见常量

Numpy 定义了一些常用的常量,方便开发者在科学计算中使用。例如,np.pi代表圆周率 π,在涉及圆的面积、周长计算,以及三角函数运算等场景中,直接使用np.pi能让代码更加简洁且表意清晰。代码示例如下:

 

import numpy as np

# 计算半径为5的圆的面积

area = np.pi * 5 ** 2

print(area)

(二)Numpy 中的特殊值常量

  1. np.nan:表示非数字(Not a Number),通常在数据缺失、计算错误(如 0/0)等情况下出现。在数据分析中,识别和处理np.nan至关重要。
  1. np.inf:代表正无穷大,np - inf则表示负无穷大。比如在寻找数据的边界值,或者在一些算法初始化时,这些常量能发挥重要作用。

二、数据类型

(一)Numpy 的数据类型种类

Numpy 支持多种数据类型,这为处理不同类型的数据提供了极大的灵活性:

  1. 整数类型:np.int8、np.int16、np.int32、np.int64分别表示 8 位、16 位、32 位、64 位有符号整数;与之对应的,np.uint8、np.uint16、np.uint32、np.uint64表示无符号整数。在处理图像数据时,np.uint8应用广泛,因为它能表示 0 - 255 的像素值。
  1. 浮点数类型:np.float16、np.float32、np.float64,其中np.float64最为常用,在科学计算和数据分析中,它能提供较高的精度。
  1. 布尔类型:np.bool_,用于存储布尔值True和False,在条件判断和逻辑运算中不可或缺。

(二)数据类型的指定与转换

在创建 Numpy 数组时,可以通过dtype参数指定数据类型。示例如下:

 

arr = np.array([1, 2, 3], dtype = np.float32)

print(arr)

若要对已有的数组进行数据类型转换,可使用astype方法:

 

arr_int = np.array([1.1, 2.2, 3.3])

arr_new = arr_int.astype(np.int32)

print(arr_new)

三、时间日期和时间增量

(一)Numpy 的时间日期表示

Numpy 通过datetime64类型支持时间日期的处理,该类型能以多种格式表示日期和时间。创建datetime64数组的示例如下:

 

date_arr = np.array(['2025 - 01 - 01', '2025 - 01 - 02'], dtype = 'datetime64')

print(date_arr)

(二)时间增量的运用

timedelta64类型用于表示两个时间点之间的时间差。通过np.timedelta64,可以进行日期的加减运算。例如:

 

date = np.datetime64('2025 - 01 - 01')

delta = np.timedelta64(7, 'D')

new_date = date + delta

print(new_date)

这一特性在处理时间序列数据,如股票价格、气象数据时,能够方便地进行时间跨度的计算和分析。

相关文章:

  • 无机械部件+线性频响:XARION传感器如何解决传统声学检测三大痛点?
  • VMware安装Ubuntu实战分享:从下载到桌面的完整指南
  • 【leetcode hot 100 347】前 K 个高频元素
  • 夯实 kafka 系列|第六章:自定义注解 @EvalEventListener 开发
  • Java-servlet(九)前端会话,会话管理与Cookie和HttpSession全解析
  • LeetCode 2829.k-avoiding 数组的最小总和:贪心(数学公式O(1)算出)
  • https://blog.csdn.net/Snowy_susu/article/details/103007927
  • window系统下安装elk
  • 备赛蓝桥杯之第十六届模拟赛第1期职业院校组第五题:回忆画廊
  • 前端面经分享(25/03/26)
  • PCIe面试核心内容与Linux驱动知识完全指南
  • 家乡旅游景点小程序(源码+部署教程)
  • LeetCode算法题(Go语言实现)_14
  • 【机器学习】——机器学习思考总结
  • 如何在 Postman 中设置 Content-Type 的完整指南
  • 周卫林|从模型平权到“知本”复利,NoETL 打造 AI 时代的数据底座
  • C语言文件操作简介:从文件打开到文件读写
  • Vue 使用 xlsx 插件导出 excel 文件
  • Git入门——常用指令汇总
  • scala课后总结(1)
  • 做微信推送封面的网站/腾讯企点qq
  • 日本人做运动的网站/网易搜索引擎入口
  • 英文响应式网站建设/什么平台可以免费发广告
  • 网络营销岗位职责和任职要求/网络优化这个行业怎么样
  • 中国铁路建设集团公司网站/网站优化排名工具
  • 网站开发预算报价表/nba排行榜最新排名