【数据分析】reshape(-1,1)和numpy的广播机制
在创建DataFrame的时候常常使用reshape来更改数据的列数和行数。
reshape可以用于numpy库里的ndarray和array结构以及pandas库里面的DataFrame和Series结构。
源数据
reshape函数
reshape(行,列)可以根据指定的数值将数据转换为特定的行数和列数,这个好理解,就是转换成矩阵。
然而,在实际使用中,特别是在运用函数的时候,系统经常会提示是否需要对数据使用reshape(1,-1)或者reshape(-1,1)进行转换,那这两个转换是什么意思呢?难道还有-1行的数据?
我们来尝试一下:
使用reshape(-1,1)
在使用了reshape(-1,1)之后,数据集似乎变成了一列,
那这个-1在这里要怎么理解呢?
跟进numpy库官网的介绍,这里的-1被理解为unspecified value,意思是未指定为给定的。
如果我只需要特定的行数,列数多少我无所谓,我只需要指定行数,那么列数直接用-1代替就行了,计算机帮我们算赢有多少列,反之亦然。
所以-1在这里应该可以理解为一个正整数通配符,它代替任何整数。
我们拿刚才的数据来试试看:
由上图可知,指定为-1的时候,其行的数量会根据列的要求自动改变
再提一下转秩 T 和广播机制
【数据分析】reshape(-1,1)和numpy的广播机制相关推荐
- Numpy的广播机制详解(broadcasting)
Numpy的广播机制详解(broadcasting) 广播(Broadcast)是 numpy 对不同形状(shape)的数组进行数值计算的方式, 对数组的算术运算通常在相应的元素上进行. 如果两个数 ...
- 详解Numpy的广播机制
广播 Numpy中有很多强大的功能,广播便是其中之一.广播能帮助你对两个不同维度的数组执行操作.例如: import numpy as np a = np.array([[0, 1],[2, 3],[ ...
- Numpy 广播机制(两个不同维度对象进行数学运算)
1. 数组相加 一个 2*5 维的数组对象和一个 1 维的数组对象进行相加,结果会怎样? In [1]: import numpy as npIn [2]: a = np.arange(10).res ...
- Python中的Numpy(4.矩阵操作(算数运算,矩阵积,广播机制))
1.基本的矩阵操作: '''1.算数运算符:加减乘除''' n1 = np.random.randint(0, 10, size=(4, 5)) print(n1) n2 = n1 + 10 # 对n ...
- 【Python数据科学快速入门系列 | 04】Numpy四则运算、矩阵运算和广播机制的爱恨情仇
这是机器未来的第43篇文章 原文首发地址:https://blog.csdn.net/RobotFutures/article/details/126493989 文章目录 1. 概述 2. 四则运算 ...
- 数据分析 第二周 (条形图,散点图,直方图,numpy运算和数组广播机制)笔记
文章目录 1.烟台市1月与6月日最高气温散点图(散点图) 2.内地票房前五名 上映次日票房比较(单次条形图) 3.内地票房前五名 上映前三日票房比较(多次条形图) 4. 250部经典影片时长统计 5. ...
- Python 数据分析与展示笔记1 -- Numpy 基础
Python 数据分析与展示笔记1 – NumPy 基础 Python 数据分析与展示系列笔记是笔者学习.实践Python 数据分析与展示的相关笔记 课程链接: Python 数据分析与展示 参考文档 ...
- python运算学习之Numpy ------ 数组操作:连接数组、拆分数组 、广播机制、结构化数组、文件贮存与读写、np.where、数组去重...
数组的连接: 1 # 连接数组 2 A = np.zeros((3, 4)) 3 B = np.ones_like(A) 4 print(A, "\n-------分割符--------\n ...
- Numpy数组的广播机制
文章目录 前言 数组广播 广播机制的使用条件 前言 Numpy数组不需要循环遍历,即可对每个元素执行批量的算术运算操作(矢量化运算).当两个数组大小(Numpy.shape)不同时,进行算术运算会出现 ...
最新文章
- 英语很差,可能不会阻止你成为一名程序员,但一定会限制你成为一名“优秀的”程序员...
- DFS+剪枝 hdu 5113 Black And White
- 微信小程序:获取地理定位和显示相应的城市名称。
- Oracle数据库查看用户状态
- S1.2 Python开发规范指南
- 网络流-最大流 dinic+当前弧优化(模板)
- docker容器内开启22 ssh_在docker容器中开启ssh服务 (未成功有时间再验证)
- Linux解压tar.gz、zip、tar.bz2 文件与对应的命令
- 后台模拟页面登陆_模拟炒股软件支付宝同花顺都可以快速体验炒股
- Jayrock: JSON and JSON-RPC for .NET
- Emacs一个键绑定多个命令
- alter table move
- 2021年春季 PAT乙级
- C语言之动态内存开辟之malloc
- 腾讯云对象存储的完整教程,java将文件上传到腾讯云上后返回可以访问的连接
- QS2016年全球高等教育系统实力排名 中国排名世界第八亚洲第一
- .scss和.css的区别,css - SCSS和Sass有什么区别?
- 基于javaweb(springboot+mybatis)网上家具商城项目设计和实现以及文档报告
- 如何在Hi3559A上运行自己的YOLOv3模型(五)
- 【新】使用setuptools打包Python项目