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

MOOC python数据分析(2)数据存取/随机数函数

一、系列文章目录

(1)Numpy
(2)数据存取/随机数函数
(3)PIL库/图像处理
(4)Matplotlib库
(5)Pandas库


文章目录

  • 一、系列文章目录
  • 二、CSV文件
    • 多维数据存取
    • 便捷文件存取
    • 随机数函数
    • 统计函数
    • 梯度函数


二、CSV文件

CSV (Comma‐Separated Value, 逗号分隔值)CSV是一种常见的文件格式,用来存储批量数据。但只能有效存储一维和二维数组。

写入CSV文件的方法:

np.savetxt(frame, array, fmt='%.18e', delimiter=None)

可以写为任何文件,但一般用于保存为CSV文件。
• frame : 文件、字符串或产生器,可以是.gz或.bz2的压缩文件。文件名字和格式,例如a.csv。
• array : 存入文件的数组。
• fmt : 写入文件的格式,例如:%d(十进制整数) %.2f(float后的小数输出两位) %.18e(科学计数法,保留18位) 默认 %.18e,一般改为%d
• delimiter : 分割字符串,默认是任何空格,要求我们定义为逗号。delimiter = ’ , ’

将CSV中的内容读入数组的方法:

np.loadtxt(frame, dtype=np.float, delimiter=None, unpack=False)

• frame : 文件名和格式。
• dtype : 数据类型,可选
• delimiter : 分割字符串,默认是任何空格
• unpack : 如果True,读入属性将分别写入不同变量

多维数据存取

a.tofile(frame, sep='', format='%s')

• frame : 文件、字符串
• sep : 数据分割字符串,如果不设置,写入文件为二进制。二进制比较省空间,仅用于数据备份。
• format : 写入数据的格式
写好的文件没有维度信息

np.fromfile(frame, dtype=float, count=1, sep='')

• frame : 文件、字符串
• dtype : 读取的数据类型
• count : 读入元素个数,‐1表示读入整个文件
• sep : 数据分割字符串,如果是空串,读入文件为二进制

读入的数据没有维度信息

该方法需要读取时知道存入文件时数组的维度和元素类型,a.tofile()和np.fromfile()需要配合使用,可以在写一个文件,通过元数据文件来存储额外信息。

便捷文件存取

二进制存储,文件内有数据类型、维度等信息

np.save(fname, array) 
np.savez(fname, array) #压缩版

• fname : 文件名,以.npy为扩展名,压缩扩展名为.npz
• array : 数组变量

np.load(fname)

• fname : 文件名,以.npy为扩展名,压缩扩展名为.npz

随机数函数

  • np.random.rand (shape) [0,1),均匀分布
  • np.random.randn(shape) 正态分布
  • np.random.randint(low,high,(shape)) 整数[low,high)均匀分布
  • np.random.seed(随机数种子) 调用同一个随机数种子,可以得到相同的随机数

在这里插入图片描述
shuffel(a) 按照最外维度对a乱序,改变a
permutation(a) 同shuffel,生成新数组,不改变a
在这里插入图片描述
choice(a,size,replace,p) 在a中按照概率p(一般设为与元素有关的函数)抽取元素,replace表示是否允许重复抽取,不设置默认可以重复。不设置p则等概率。

在这里插入图片描述
在这里插入图片描述

统计函数

  • sum(a,axis=None)axis指定维度,默认全部元素
  • mean(a,axis=None)
  • average(a,axis=None,weights=None)加权平均值
  • std(a,axis=None) 标准差
  • var(a,axis=None) 方差
  • min max
  • argmin argmax 扁平化后的位置
  • median 中位数 浮点数
  • ptp(a) 极差
  • unravel_index(index, shape) 根据shape将一维下标index转换成多维下标
    在这里插入图片描述

梯度函数

np.gradient(f) 计算元素梯度,当f为多维时,返回每个维度的梯度。


在这里插入图片描述
22= (40-18)/ 1

相关文章:

  • 北京网站建设多少钱?
  • 辽宁网页制作哪家好_网站建设
  • 高端品牌网站建设_汉中网站制作
  • 千万不要死于无知——有氧运动
  • 【GAN】生成对抗网络
  • 千万不要死于无知——心理状态
  • MOOC python数据分析(3)PIL库/图像处理
  • 江南水乡
  • 解决【This Python interpreter is in a conda environment, but the environment has not been activated.】
  • Oracle诊断案例-Job任务停止执行
  • MOOC python数据分析(4)Matplotlib库
  • Eclipse快速上手指南 (2)
  • Eclipse快速上手指南 (3)
  • 联想小新13pro安装ubuntu双系统心得(解决无法识别启动U盘等问题)
  • ubuntu安装hhsuite/hhblits全过程!
  • ATL编译时只能用debug编译的解决方法
  • 制作启动U盘后出现“CD驱动器”问题
  • 正则化
  • 【个人向】《HTTP图解》阅后小结
  • - C#编程大幅提高OUTLOOK的邮件搜索能力!
  • isset在php5.6-和php7.0+的一些差异
  • java取消线程实例
  • mysql 数据库四种事务隔离级别
  • nfs客户端进程变D,延伸linux的lock
  • PAT A1120
  • Python利用正则抓取网页内容保存到本地
  • SQLServer之索引简介
  • ubuntu 下nginx安装 并支持https协议
  • 阿里云容器服务区块链解决方案全新升级 支持Hyperledger Fabric v1.1
  • 警报:线上事故之CountDownLatch的威力
  • 区块链共识机制优缺点对比都是什么
  • 深入浅出webpack学习(1)--核心概念
  • 我的业余项目总结
  • 我这样减少了26.5M Java内存!
  • 详解移动APP与web APP的区别
  • Mac 上flink的安装与启动
  • ​​​​​​​Installing ROS on the Raspberry Pi
  • ​【原创】基于SSM的酒店预约管理系统(酒店管理系统毕业设计)
  • ​TypeScript都不会用,也敢说会前端?
  • ​如何使用ArcGIS Pro制作渐变河流效果
  • #Java第九次作业--输入输出流和文件操作
  • #中的引用型是什么意识_Java中四种引用有什么区别以及应用场景
  • (2/2) 为了理解 UWP 的启动流程,我从零开始创建了一个 UWP 程序
  • (3)医疗图像处理:MRI磁共振成像-快速采集--(杨正汉)
  • (32位汇编 五)mov/add/sub/and/or/xor/not
  • (超简单)构建高可用网络应用:使用Nginx进行负载均衡与健康检查
  • (代码示例)使用setTimeout来延迟加载JS脚本文件
  • (动态规划)5. 最长回文子串 java解决
  • (二)Kafka离线安装 - Zookeeper下载及安装
  • (剑指Offer)面试题41:和为s的连续正数序列
  • (四)c52学习之旅-流水LED灯
  • (五)关系数据库标准语言SQL
  • (学习日记)2024.03.25:UCOSIII第二十二节:系统启动流程详解
  • (一)appium-desktop定位元素原理
  • (一)pytest自动化测试框架之生成测试报告(mac系统)
  • (转)chrome浏览器收藏夹(书签)的导出与导入
  • (转)memcache、redis缓存
  • (转)mysql使用Navicat 导出和导入数据库