flatten()函数用法

flatten是numpy.ndarray.flatten的一个函数,即返回一个一维数组

flatten只能适用于numpy对象,即array或者mat,普通的list列表不适用!。

a.flatten():a是个数组,a.flatten()就是把a降到一维,默认是按行的方向降 。
a.flatten().A:a是个矩阵,降维后还是个矩阵,矩阵.A(等效于矩阵.getA())变成了数组。

具体看下面的例子:

1.用在数组

>>> a = [[1,3],[2,4],[3,5]]
>>> a = array(a)
>>> a.flatten()
array([1, 3, 2, 4, 3, 5])

2.用在矩阵(mat是numpy中转化为矩阵的函数)

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

可以看到矩阵在使用flatten之后还是矩阵matrix,在使用.A之后才变成数组
3.用在列表

>>> a = [[1,3],[2,4],[3,5]]
>>> a.flatten()Traceback (most recent call last):File "<pyshell#10>", line 1, in <module>a.flatten()
AttributeError: 'list' object has no attribute 'flatten'

正确的用法:

>>> a = [[1,3],[2,4],[3,5],["abc","def"]]
>>> a1 = [y for x in a for y in x]
>>> a1
[1, 3, 2, 4, 3, 5, 'abc', 'def']

这就是flatten的一些用法,有错误欢迎指正!

Python中flatten( )函数及函数用法详解相关推荐

  1. python3 isinstance用法_对python中assert、isinstance的用法详解

    1. assert 函数说明: Assert statements are a convenient way to insert debugging assertions into a program ...

  2. python的raw_ input是什么意思-对python中raw_input()和input()的用法详解

    最近用到raw_input()和input()来实现即时输入,就顺便找了些资料来看,加上自己所用到的一些内容,整理如下: 1.raw_input() raw_input([prompt]) -> ...

  3. python中str和input_对python中raw_input()和input()的用法详解

    最近用到raw_input()和input()来实现即时输入,就顺便找了些资料来看,加上自己所用到的一些内容,整理如下: 1.raw_input() raw_input([prompt]) -> ...

  4. python中递归函数写法_python递归函数用法详解

    上期我们介绍了函数式编程,这期内容就是关于递归的函数内容,本期还是按照老规矩,给大家进行核心整理,内容通俗易懂,搭配实际应用,以供大家理解. 关于递归: 百度解释:是指函数/过程/子程序在运行过程序中 ...

  5. [Python]中反斜杠的用法+详解,以及r前缀标识符的用法

    当我们在字符串中使用反斜杠字符\时,它通常被视为特殊字符,用于表示某些特殊含义,例如\n表示换行符.为了在字符串中表示一个普通的反斜杠字符\,需要使用双反斜杠\\来进行转义.这是因为反斜杠字符\在Py ...

  6. python中setdefault_python练习之setdefault用法详解

    setdefault作为python字典中的函数,有很多功能. 语法:dict.setdefault(key, default=None) key为查找的键,default为查不到时,系统自动在字典里 ...

  7. python中pip安装、升级包用法详解

    1.pip下载安装: 1.1 查看自己服务器或虚拟机中是否已经安装pip: 1.2 使用yum安装pip: 注意:Centos系统使用的安装工具是yum,Ubantu系统使用的安装工具是apt-get ...

  8. python中seek(10、1)_Python中index()和seek()的用法(详解)

    1.index() 一般用处是在序列中检索参数并返回第一次出现的索引,没找到就会报错,比如: >>> t=tuple('Allen') >>> t ('A', 'l ...

  9. python中index什么意思_Python中index()和seek()的用法(详解)

    1.index() 一般用处是在序列中检索参数并返回第一次出现的索引,没找到就会报错,比如: >>> t=tuple('Allen') >>> t ('A', 'l ...

  10. python中global和def_Python中 Global和Nonlocal的用法详解

    nonlocal 和 global 也很容易混淆.简单记录下自己的理解. 解释 global 总之一句话,作用域是全局的,就是会修改这个变量对应地址的值. global 语句是一个声明,它适用于整个当 ...

最新文章

  1. url参数解析 url解析 ?解析成对象
  2. scrapy 分布式爬虫- RedisSpider
  3. spo2数据集_Arduino 血氧心率模块传感器数据采集
  4. 从零开始学习python:demo2.3
  5. 里加一列为1_一素一菩提 @ 素牛排薯泥amp;百香龙珠气泡饮
  6. 35个非主流开源数据库
  7. 手把手教你写个小程序定时器管理库
  8. java web filter 之一 基础实现
  9. C++泛型编程实现二叉搜索树BST
  10. 《软件工程》课堂作业:返回一个整数数组中最大字数组的和
  11. Flex及AIR开发资源集合
  12. PyTorch 学习笔记(二):PyTorch的数据增强与数据标准化
  13. 2013-2018卷积神经网络中十个最重要的概念与创新
  14. 【案例17】ibm_jdk加密导致uclient无法登录NC
  15. CF probabilities 自制题单
  16. mariadb登录mysql_MariaDB安装完怎么用root登录
  17. 计算机如何分屏操作步骤,win7怎么设置电脑分屏显示|win7分屏显示设置方法
  18. 【Python打卡2019】20190423之52周存钱挑战-for+range()函数使用
  19. 新一代奔驰C级车型内饰大改动,预计2021年才会亮相?
  20. excel 复制到mysql_excel导入数据到mysql

热门文章

  1. CAD怎么标注尺寸?CAD半径标注技巧
  2. html身高的代码,html个人简历的代码-20210412071827.docx-原创力文档
  3. 微信小程序(小游戏)后台开发
  4. ASCII中的控制字符含义
  5. 云计算连环计 移动CRM终落地
  6. 分享当下人生——一个高中毕业生在中央电视台的六星期实习经历
  7. python中无限遍历在多维嵌套字典、列表的JSON中获取路径path跟对应的值——find_path(终极版)
  8. html 网页自动适应大小,HTML+CSS入门 网页自适应解读
  9. 编程语言习题集(2)
  10. 微信小程序的数据监听器