numpy 矩阵形状调整:拉伸、变成一位数组的实例

我就废话不多说了,大家还是直接看代码吧~

#coding:utf-8
import numpy as np

## 改变数组的形状
#将b 变成3*4 的矩阵
b=np.arange(24).reshape(3,8)
print(b)

#将多维数组变成 1维数组
a=b.ravel()
print(a)
#将多维数组变成 1维数组,faltten 返回的是真实的数组,需要分配新的内存空间。而ravel 返回的是数组的视图
print(b.flatten())
print("拉直之后:",b)

#改变 b 本身的数组,会改变所作用的数组
b.resize(2,12)

#不改变b 本身的数组
c=b.reshape(2,12)
print(c)

补充知识:numpy ndarray 形状(shape)变换(reshape)变形

1,新建array (numpy.ndarray)

import numpy as np

# 手动填写一个
a=[[1,2],[2,3],[3,4]]
a = np.array(a)

# 随机生成一个
b = np.random.randint(0,10,(2, 3)) # 两行三列,元素从0到10

2,查看形状

print(a.shape)
# (3, 2)

3,多种变形

# 填写元素个数,变成一维
a.reshape(6)

# 只给行数n,numpy根据给出的行数,自行计算(列参数为-1,注意元素总的个数要能被n整除)
# 或者是在不知道转换之后a的列数应该是多少的情况下使用。
a.reshape(2, -1)
# array([[1, 2, 2],
#    [3, 3, 4]])

a.reshape(3, -1)
# array([[1, 2],
#    [2, 3],
#    [3, 4]])

# 只给列数。同理。在不知道a的行数的情况下也可以使用。
a.reshape(-1, 1)
# array([[1],
#    [2],
#    [2],
#    [3],
#    [3],
#    [4]])

以上这篇numpy 矩阵形状调整:拉伸、变成一位数组的实例就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持我们。

(0)

相关推荐

  • Numpy之将矩阵拉成向量的实例

    废话不多说,直接上代码吧! # 矩阵操作 # 将矩阵拉成向量 import numpy as np x = np.arange(10).reshape(2,5) print(x) y1 = x.ravel() y2 = x.flatten() print("y1: ",y1," y2: ",y2) print(x) """ 打印结果: [[0 1 2 3 4] [5 6 7 8 9]] y1: [0 1 2 3 4 5 6 7 8 9]

  • python实现矩阵和array数组之间的转换

    前言: array数组要转换成矩阵(matrix)数据类型才能进行一系列的线性运算.matrix类型也有时候要转换成array数组. 代码: 1.array转matrix:用mat() a = arange(3*2).reshape(3,2) print('array类型:') print(type(a)) print(a) b = mat(a) print('matrix类型:') print(type(b)) print(b) 输出: array类型: <class 'numpy.ndarr

  • python+numpy实现的基本矩阵操作示例

    本文实例讲述了python+numpy实现的基本矩阵操作.分享给大家供大家参考,具体如下: #! usr/bin/env python # coding: utf-8 # 学习numpy中矩阵的代码笔记 # 2018年05月29日15:43:40 # 参考网站:http://cs231n.github.io/python-numpy-tutorial/ import numpy as np #==================矩阵的创建,增删查改,索引,运算==================

  • Python numpy中矩阵的基本用法汇总

    Python矩阵的基本用法 mat()函数将目标数据的类型转化成矩阵(matrix) 1,mat()函数和array()函数的区别 Numpy函数库中存在两种不同的数据类型(矩阵matrix和数组array),都可以用于处理行列表示的数字元素,虽然他们看起来很相似,但是在这两个数据类型上执行相同的数学运算可能得到不同的结果,其中Numpy函数库中的matrix与MATLAB中matrices等价. 直接看一个例子: import numpy as np a = np.mat('1 3;5 7')

  • numpy 矩阵形状调整:拉伸、变成一位数组的实例

    我就废话不多说了,大家还是直接看代码吧~ #coding:utf-8 import numpy as np ## 改变数组的形状 #将b 变成3*4 的矩阵 b=np.arange(24).reshape(3,8) print(b) #将多维数组变成 1维数组 a=b.ravel() print(a) #将多维数组变成 1维数组,faltten 返回的是真实的数组,需要分配新的内存空间.而ravel 返回的是数组的视图 print(b.flatten()) print("拉直之后:",

  • NumPy 矩阵乘法的实现示例

    NumPy 支持的几类矩阵乘法也很重要. 元素级乘法 你已看过了一些元素级乘法.你可以使用 multiply 函数或 * 运算符来实现.回顾一下,它看起来是这样的: m = np.array([[1,2,3],[4,5,6]]) m # 显示以下结果: # array([[1, 2, 3], # [4, 5, 6]]) n = m * 0.25 n # 显示以下结果: # array([[ 0.25, 0.5 , 0.75], # [ 1. , 1.25, 1.5 ]]) m * n # 显示以

  • TensorFlow和Numpy矩阵操作中axis理解及axis=-1的解释

    目录 1. axis的基本使用 2. 对axis的理解 总结 参考资料 1. axis的基本使用 axis常常用在numpy和tensorflow中用到,作为对矩阵(张量)进行操作时需要指定的重要参数之一.设定axis=-1,0,1...,用来指定执行操作的数据如何划分. 一句话解释:设axis=i,则沿着第i个下标变化的方向进行操作![1] 简单例子就不举了,其他博客有很多,这里举一个稍微复杂一点的三维矩阵的例子: 设embeddings是一个shape=[3,4,5]的矩阵,如下: embe

  • Python编程给numpy矩阵添加一列方法示例

    首先我们有一个数据是一个mn的numpy矩阵现在我们希望能够进行给他加上一列变成一个m(n+1)的矩阵 import numpy as np a = np.array([[1,2,3],[4,5,6],[7,8,9]]) b = np.ones(3) c = np.array([[1,2,3,1],[4,5,6,1],[7,8,9,1]]) PRint(a) print(b) print(c) [[1 2 3] [4 5 6] [7 8 9]] [ 1. 1. 1.] [[1 2 3 1] [4

  • Python numpy 提取矩阵的某一行或某一列的实例

    如下所示: import numpy as np a=np.arange(9).reshape(3,3) a Out[31]: array([[0, 1, 2], [3, 4, 5], [6, 7, 8]]) 矩阵的某一行 a[1] Out[32]: array([3, 4, 5]) 矩阵的某一列 a[:,1] Out[33]: array([1, 4, 7]) b=np.eye(3,3) b Out[36]: array([[ 1., 0., 0.], [ 0., 1., 0.], [ 0.,

  • 在numpy矩阵中令小于0的元素改为0的实例

    如下所示: >>> import numpy as np >>> a = np.random.randint(-5, 5, (5, 5)) >>> a array([[-4, -4, -5, 2, 1], [-1, -2, -1, 3, 3], [-1, -2, 3, -5, 3], [ 0, -3, -5, 1, -4], [ 0, 3, 1, 3, -4]]) # 方式一 >>> np.maximum(a, 0) array([[

  • 详解numpy矩阵的创建与数据类型

    Numpy是python常用的一个类库,在python的使用中及其常见,广泛用在矩阵的计算中,numpy对矩阵的操作与纯python比起来速度有极大的差距. 一. 构造矩阵 矩阵的构造可以有多种方法: 1.使用python中的方法构造矩阵 - 生成一维矩阵 # 使用python自带的range()方法生成一个矩阵 a = list(range(100))#range()产生从0-99的一个列表 print(a) - 生成二维及多维矩阵 # 使用python自带的range()方法生成一个矩阵 a

  • Python:合并两个numpy矩阵的实现

    numpy是Python用来科学计算的一个非常重要的库,numpy主要用来处理一些矩阵对象,可以说numpy让Python有了Matlab的味道. 如何利用numpy来合并两个矩阵呢?我们可以利用numpy向我们提供的两个函数来进行操作. #hstack()在行上合并 np.hstack((a,b)) #vstack()在列上合并 np.vstack((a,b)) 以上a,b分别为两个numpy矩阵.hstack在行上合并,vstack在列上合并. 这篇Python:合并两个numpy矩阵的实现

  • python numpy 矩阵堆叠实例

    在实际操作中,遇到了矩阵堆叠的操作,本来想着自己写一个函数,后来想,应该有库函数,于是一阵找寻 import numpy as np a = np.array([1,2,3]) b = np.array([4,5,6]) np.stack((a,b)) #默认行堆叠 输出: array([[1, 2, 3], [4, 5, 6]]) np.vstack((a, b)) 输出: array([[1, 2, 3], [4, 5, 6]]) np.hstack((a, b)) 输出: array([1

  • numpy矩阵数值太多不能全部显示的解决

    numpy矩阵数值太多不能全部显示,可以运行以下命令令全部数值展示出来 np.set_printoptions(threshold='nan') 补充知识:python中numpy的默认使用科学计数法显示数据的改变办法 在文件头加一句代码: import numpy as np np.set_printoptions(suppress=True) 以上这篇numpy矩阵数值太多不能全部显示的解决就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持我们.

随机推荐