两者都可实现将多维数组降位一维的功能

numpy.flatten()返回拷贝,对拷贝所做的修改不会影响原始矩阵

numpy.ravel()返回视图,会影响原始矩阵

1)ravel()
In [16]: data
Out[16]:
array([[ 0, 1, 2, 3],
[ 4, 5, 6, 7],
[ 8, 9, 10, 11]]) In [17]: data2 = data.ravel() #ravel() In [18]: data2
Out[18]: array([ 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11]) In [19]: data2[0] = 99 In [20]: data2
Out[20]: array([99, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11]) In [21]: data
Out[21]:
array([[99, 1, 2, 3],
[ 4, 5, 6, 7],
[ 8, 9, 10, 11]])
2)flatten()
In [30]: data
Out[30]:
array([[ 0, 1, 2, 3],
[ 4, 5, 6, 7],
[ 8, 9, 10, 11]]) In [31]: data2= data.flatten() #flatten() In [32]: data2
Out[32]: array([ 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11]) In [33]: data2[0]=99 In [34]: data2
Out[34]: array([99, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11]) In [35]: data
Out[35]:
array([[ 0, 1, 2, 3],
[ 4, 5, 6, 7],
[ 8, 9, 10, 11]])

numpy.ravel() 与 numpy.flatten()的更多相关文章

  1. numpy.ravel() vs numpy.flatten()

    首先声明两者所要实现的功能是一致的(将多维数组降为一维),两者的区别在于返回拷贝(copy)还是返回视图(view),numpy.flatten()返回一份拷贝,对拷贝所做的修改不会影响(reflec ...

  2. Python的 numpy中 numpy.ravel() 和numpy.flatten()的区别和使用

    两者所要实现的功能是一致的(将多维数组降为一维), 两者的区别在于返回拷贝(copy)还是返回视图(view),numpy.flatten() 返回一份拷贝,对拷贝所做的修改不会影响(reflects ...

  3. 学习笔记27—python中numpy.ravel() 和 flatten()函数

    简介 首先声明两者所要实现的功能是一致的(将多维数组降位一维).这点从两个单词的意也可以看出来,ravel(散开,解开),flatten(变平).两者的区别在于返回拷贝(copy)还是返回视图(vie ...

  4. numpy.ravel()/numpy.flatten()/numpy.squeeze()

    numpy.ravel(a, order='C') Return a flattened array numpy.chararray.flatten(order='C') Return a copy ...

  5. Python的工具包[0] -> numpy科学计算 -> numpy 库及使用总结

    NumPy 目录 关于 numpy numpy 库 numpy 基本操作 numpy 复制操作 numpy 计算 numpy 常用函数 1 关于numpy / About numpy NumPy系统是 ...

  6. python 中range numpy.arange 和 numpy.linspace 的区别

    1.返回值不同 range返回一个range对象,numpy.arange和numpy.linspace返回一个数组. 2.np.arange的步长可以为小数,但range的步长只能是整数. 与Pyt ...

  7. numpy.random.random & numpy.ndarray.astype & numpy.arange

    今天看到这样一句代码: xb = np.random.random((nb, d)).astype('float32') #创建一个二维随机数矩阵(nb行d列) xb[:, 0] += np.aran ...

  8. python numPy模块 与numpy里的数据类型、数据类型对象dtype

    学习链接:http://www.runoob.com/numpy/numpy-tutorial.html 官方链接:https://numpy.org/devdocs/user/quickstart. ...

  9. python numpy.shape 和 numpy.reshape函数

    导入numpy模块   from numpy import *   import numpy as np ############################################### ...

随机推荐

  1. hibernate结果集多种映射方案

    String sql = "select marker_no AS markerNo,name from lv_marker"; String sqlMo = "sele ...

  2. 2019~2020icpc亚洲区域赛徐州站H. Yuuki and a problem

    2019~2020icpc亚洲区域赛徐州站H. Yuuki and a problem 题意: 给定一个长度为\(n\)的序列,有两种操作: 1:单点修改. 2:查询区间\([L,R]\)范围内所有子 ...

  3. Java学习十六

    学习内容: 1.做毕设 2.Java异常类 3.Java包装类 1.System.exit(1):终止程序运行,终止final执行方法 2.throws抛出异常类型,throw抛出异常对象 用法:th ...

  4. openv uMat和Mat数据格式的转换

    Mat 转成 UMat: UMat umat; mat.copyTo(umat); UMat转成 Mat : Mat mat; umat.copyTo(mat);

  5. winter_holiday_2019

    个人逐利对他人的影响:私营企业主的个人付出.作为长辈对晚辈的付出 是2020要实现精准扶贫吗?精准扶贫的概念,是针对一个家庭还是针对家里的每个人的平均收入.精准扶贫比教育更有作用,刘传铁(湖北省委高校 ...

  6. Django框架(七):模型(三) 关联、模型类的属性

    1. 关联 1.1 模型类关系 关系型数据库的关系包括三种类型: ForeignKey:一对多,将字段定义在多的一端中. ManyToManyField:多对多,将字段定义在任意一端中. OneToO ...

  7. java复制对象,复制对象属性,只可复制两个对象想同的属性名。也可自定义只复制需要的属性。

    注意:使用时copy()方法只会复制相同的属性.常用的copy()方法.以下为封装的工具和使用方式. 1.封装类 import java.util.Map; import java.util.Weak ...

  8. JAVA--Mybatis-Spring-SpringMVC框架整合

    ------Mybatis-Spring-SpringMVC框架整合示例----- mybatis SQL映射文件 <?xml version="1.0" encoding= ...

  9. Python筛法求素数

    l=[2]m,n=input().split()m=int(m)n=int(n) for i in range(m,n): flag=True for j in l: if i%j==0:#如果当前值 ...

  10. HOG特征原理及代码实现

    HOG特征原理 HOG特征: 方向梯度直方图(Histogram of Oriented Gradient, HOG)特征是一种在计算机视觉和图像处理中用来进行物体检测的特征描述子. 它通过计算和统计 ...