Python中flatten( ),matrix.A用法说明


Posted in Python onJuly 05, 2020

flatten()函数用法

flatten是numpy.ndarray.flatten的一个函数,即返回一个折叠成一维的数组。但是该函数只能适用于numpy对象,即array或者mat,普通的list列表是不行的。

其官方文档是这样描述的

Parameters:

ndarray.flatten(order='C') Return a copy of the array collapsed into one dimension. order : {‘C', ‘F', ‘A', ‘K'}, optional

‘C' means to flatten in row-major (C-style) order. ‘F' means to flatten in column-major (Fortran- style) order. ‘A' means to flatten in column-major order if a is Fortran contiguous in memory, row-major order otherwise. ‘K' means to flatten a in the order the elements occur in memory. The default is ‘C'.

a是个矩阵或者数组,a.flatten()就是把a降到一维,默认是按横的方向降

那么a.flatten().A又是什么呢? 其实这是因为此时的a是个矩阵,降维后还是个矩阵,矩阵.A(等效于矩阵.getA())变成了数组。具体看下面的例子:

1、用于array对象

>>> from numpy import *
>>> a=array([[1,2],[3,4],[5,6]])
>>> a
array([[1, 2],
  [3, 4],
  [5, 6]])
>>> a.flatten()
array([1, 2, 3, 4, 5, 6])
>>> a.flatten('F')
array([1, 3, 5, 2, 4, 6]) # 按列排序
>>> a.flatten('A')
array([1, 2, 3, 4, 5, 6])
>>>

2、用于mat对象

>>> a=mat([[1,2,3],[4,5,6]])
>>> a
matrix([[1, 2, 3],
  [4, 5, 6]])
>>> a.flatten()
matrix([[1, 2, 3, 4, 5, 6]])
>>> a=mat([[1,2,3],[4,5,6]])
>>> a
matrix([[1, 2, 3],
  [4, 5, 6]])
>>> a.flatten()
matrix([[1, 2, 3, 4, 5, 6]])
>>> y=a.flatten().A 
>>> shape(y)
(1L, 6L)
>>> shape(y[0]) 
(6L,)
>>> a.flatten().A[0] 
array([1, 2, 3, 4, 5, 6])
>>>

从中可以看出matrix.A的用法和矩阵发生的变化。

3、但是该方法不能用于list对象,想要list达到同样的效果可以使用列表表达式:

>>> a=array([[1,2],[3,4],[5,6]])
>>> [y for x in a for y in x]
[1, 2, 3, 4, 5, 6]
>>>

完美实现!!

补充知识:python中矩阵.A是什么意思?

1. 概述

在numpy中矩阵我们十分常用,但有时候我们会将矩阵转化为数组,方法很简单,直接在矩阵名后加 .A 即可。

2. 演示

#!/usr/bin/env python3
# -*- coding: utf-8 -*-
# @Time : 2019/2/21 19:13
# @Author : Arrow and Bullet
# @FileName: .A.py
# @Software: PyCharm
# @Blog :https://blog.csdn.net/qq_41800366
from numpy import *

matTest = mat([1, 2])
print(matTest, type(matTest)) # 结果:[[1 2]] <class 'numpy.matrixlib.defmatrix.matrix'>

matTestToArr = matTest.A
print(matTestToArr, type(matTestToArr)) # 结果:[[1 2]] <class 'numpy.ndarray'>

打印结果如下:

# [[1 2]] <class 'numpy.matrixlib.defmatrix.matrix'>

# [[1 2]] <class 'numpy.ndarray'>

希望能够帮助到大家,有什么问题可以 直接评论即可,喜欢有用的话可以点个赞让更多的人看到,如果不够详细的话也可以说,我会及时回复的。

以上这篇Python中flatten( ),matrix.A用法说明就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Python 相关文章推荐
Python中使用动态变量名的方法
May 06 Python
python简单获取数组元素个数的方法
Jul 13 Python
python简单分割文件的方法
Jul 30 Python
python+pandas生成指定日期和重采样的方法
Apr 11 Python
Python爬虫包BeautifulSoup异常处理(二)
Jun 17 Python
Python 十六进制整数与ASCii编码字符串相互转换方法
Jul 09 Python
Django跨域请求CSRF的方法示例
Nov 11 Python
python根据文章标题内容自动生成摘要的实例
Feb 21 Python
python爬虫开发之Request模块从安装到详细使用方法与实例全解
Mar 09 Python
Python爬虫实例——爬取美团美食数据
Jul 15 Python
详解anaconda安装步骤
Nov 23 Python
python二维图制作的实例代码
Dec 03 Python
python线性插值解析
Jul 05 #Python
使用keras实现非线性回归(两种加激活函数的方式)
Jul 05 #Python
Keras 中Leaky ReLU等高级激活函数的用法
Jul 05 #Python
Django --Xadmin 判断登录者身份实例
Jul 03 #Python
详解Python多线程下的list
Jul 03 #Python
Python 字符串池化的前提
Jul 03 #Python
Pycharm打开已有项目配置python环境的方法
Jul 03 #Python
You might like
第十一节--重载
2006/11/16 PHP
PHP的开发框架的现状和展望
2007/03/16 PHP
PHP 压缩文件夹的类代码
2009/11/05 PHP
自己写的php中文截取函数mb_strlen和mb_substr
2015/02/09 PHP
ThinkPHP5框架实现简单的批量查询功能示例
2018/06/07 PHP
用jquery ajax获取网站Alexa排名的代码
2009/12/12 Javascript
基于jquery的自定义鼠标提示效果 jquery.toolTip
2010/11/14 Javascript
javascript tips提示框组件实现代码
2010/11/19 Javascript
jquery.qrcode在线生成二维码使用示例
2013/08/21 Javascript
jquery无限级联下拉菜单简单实例演示
2015/11/23 Javascript
jQuery控制div实现随滚动条滚动效果
2016/06/07 Javascript
AngularJs  Creating Services详解及示例代码
2016/09/02 Javascript
解决bootstrap下拉菜单点击立即隐藏bug的方法
2017/06/13 Javascript
详解react-router如何实现按需加载
2017/06/15 Javascript
Vue.js实现实例搜索应用功能详细代码
2017/08/24 Javascript
vuex 中插件的编写案例解析
2019/06/10 Javascript
记录微信小程序 height: calc(xx - xx);无效问题
2019/12/30 Javascript
微信小程序实现身份证取景框拍摄
2020/09/09 Javascript
[52:06]完美世界DOTA2联赛决赛日 Inki vs LBZS 第一场 11.08
2020/11/10 DOTA
让python的Cookie.py模块支持冒号做key的方法
2010/12/28 Python
使用Python写CUDA程序的方法
2017/03/27 Python
Python实现七彩蟒蛇绘制实例代码
2018/01/16 Python
解决tensorflow模型参数保存和加载的问题
2018/07/26 Python
解决python 无法加载downsample模型的问题
2018/10/25 Python
selenium+Chrome滑动验证码破解二(某某网站)
2019/12/17 Python
pytorch中torch.max和Tensor.view函数用法详解
2020/01/03 Python
Python 读取WAV音频文件 画频谱的实例
2020/03/14 Python
经理职责范文
2013/11/08 职场文书
中专毕业生自我鉴定范文
2013/11/09 职场文书
中学教师岗位职责
2013/11/26 职场文书
销售内勤岗位职责
2014/04/15 职场文书
不错的求职信范文
2014/07/20 职场文书
贷款委托书
2014/08/01 职场文书
党员群众路线自我剖析材料
2014/10/06 职场文书
mysql主从复制的实现步骤
2021/10/24 MySQL
Redis 的查询很快的原因解析及Redis 如何保证查询的高效
2022/03/16 Redis