好湿?好紧?好多水好爽自慰,久久久噜久噜久久综合,成人做爰A片免费看黄冈,机机对机机30分钟无遮挡

主頁 > 知識庫 > numpy數組合并和矩陣拼接的實現

numpy數組合并和矩陣拼接的實現

熱門標簽:地圖標注推廣單頁 廈門crm外呼系統如何 n400電話申請多少錢 長春人工智能電銷機器人官網 ai地圖標注 女王谷地圖標注 百應ai電銷機器人鄭州 如何在地圖標注文字 西藏快速地圖標注地點

Numpy中提供了concatenate,append, stack類(包括hsatck、vstack、dstack、row_stack、column_stack),r_和c_等類和函數用于數組拼接的操作。

各種函數的特點和區別如下標:

concatenate 提供了axis參數,用于指定拼接方向
append 默認先ravel再拼接成一維數組,也可指定axis
stack 提供了axis參數,用于生成新的維度
hstack 水平拼接,沿著行的方向,對列進行拼接
vstack 垂直拼接,沿著列的方向,對行進行拼接
dstack 沿著第三個軸(深度方向)進行拼接
column_stack 水平拼接,沿著行的方向,對列進行拼接
row_stack 垂直拼接,沿著列的方向,對行進行拼接
r_ 垂直拼接,沿著列的方向,對行進行拼接
c_ 水平拼接,沿著行的方向,對列進行拼接

直接合并

將兩個一維數組合并成一個二維數組:

import torch
import numpy as np
import matplotlib.pyplot as plt
a = np.arange(0,15,0.1)
b = 1.088 * a + 0.638 + np.random.rand() * 10

print(a.shape,b.shape)
points = np.array([a,b])
print(points.shape)


(150,) (150,)
(2, 150)

append拼接

append(arr, values, axis=None)

arr 待合并的數組的復制(特別主頁是復制,所以要多耗費很多內存)
values 用來合并到上述數組復制的值。如果指定了下面的參數axis的話,則這些值必須和arr的shape一致(shape[axis]之外都相等),否則的話,則沒有要求。
axis 要合并的軸.

>>> import numpy as np
>>> ar1 = np.array([[1,2,3], [4,5,6]])
>>> ar2 = np.array([[7,8,9], [11,12,13]])

>>> np.append(ar1, ar2) # 先ravel扁平化再拼接,所以返回值為一個1維數組
array([ 1, 2, 3, 4, 5, 6, 7, 8, 9, 11, 12, 13])

>>> np.append(ar1, ar2, axis=0)  # 沿第一個軸拼接,這里為行的方向 
array([[ 1, 2, 3],
  [ 4, 5, 6],
  [ 7, 8, 9],
  [11, 12, 13]])

>>> np.append(ar1, ar2, axis=1)  # 沿第二個軸拼接,這里為列的方向 
array([[ 1, 2, 3, 7, 8, 9],
  [ 4, 5, 6, 11, 12, 13]])

concatenate拼接

concatenate(a_tuple, axis=0, out=None)

a_tuple: 對需要合并的數組用元組的形式給出
axis 待合并的軸,默認為0

 >>> import numpy as np
>>> ar1 = np.array([[1,2,3], [4,5,6]])
>>> ar2 = np.array([[7,8,9], [11,12,13]])
>>> ar1
array([[1, 2, 3],
  [4, 5, 6]])
>>> ar2
array([[ 7, 8, 9],
  [11, 12, 13]])

>>> np.concatenate((ar1, ar2)) # 這里的第一軸(axis 0)是行方向
array([[ 1, 2, 3],
  [ 4, 5, 6],
  [ 7, 8, 9],
  [11, 12, 13]])

>>> np.concatenate((ar1, ar2),axis=1) # 這里沿第二個軸,即列方向進行拼接
array([[ 1, 2, 3, 7, 8, 9],
  [ 4, 5, 6, 11, 12, 13]])

>>> ar3 = np.array([[14,15,16]]) # shape為(1,3)的2維數組
>>> np.concatenate((ar1, ar3)) # 一般進行concatenate操作的array的shape需要一致,當然如果array在拼接axis方向的size不一樣,也可以完成
>>> np.concatenate((ar1, ar3)) # ar3雖然在axis0方向的長度不一致,但axis1方向上一致,所以沿axis0可以拼接
array([[ 1, 2, 3],
  [ 4, 5, 6],
  [14, 15, 16]])
>>> np.concatenate((ar1, ar3), axis=1) # ar3和ar1在axis0方向的長度不一致,所以報錯

hstack

>>> np.hstack((ar1,ar2)) # 水平拼接,沿著行的方向,對列進行拼接
array([[ 1, 2, 3, 7, 8, 9],
  [ 4, 5, 6, 11, 12, 13]])

vstack

>>> np.vstack((ar1,ar2)) # 垂直拼接,沿著列的方向,對行進行拼接
array([[ 1, 2, 3],
  [ 4, 5, 6],
  [ 7, 8, 9],
  [11, 12, 13]])

vstack

>>> np.dstack((ar1,ar2)) # 對于2維數組來說,沿著第三軸(深度方向)進行拼接, 效果相當于stack(axis=-1)
array([[[ 1, 7],
  [ 2, 8],
  [ 3, 9]],
  [[ 4, 11],
  [ 5, 12],
  [ 6, 13]]])

column_stack和row_stack

>>> np.column_stack((ar1,ar2)) # 水平拼接,沿著行的方向,對列進行拼接
array([[ 1, 2, 3, 7, 8, 9],
  [ 4, 5, 6, 11, 12, 13]])

>>> np.row_stack((ar1,ar2)) # 垂直拼接,沿著列的方向,對行進行拼接
array([[ 1, 2, 3],
  [ 4, 5, 6],
  [ 7, 8, 9],
  [11, 12, 13]])

np.r_ 和np.c_

常用于快速生成ndarray數據

>>> np.r_[ar1,ar2]  # 垂直拼接,沿著列的方向,對行進行拼接
array([[ 1, 2, 3],
  [ 4, 5, 6],
  [ 7, 8, 9],
  [11, 12, 13]])
 
>>> np.c_[ar1,ar2] # 水平拼接,沿著行的方向,對列進行拼接
array([[ 1, 2, 3, 7, 8, 9],
  [ 4, 5, 6, 11, 12, 13]])

到此這篇關于numpy數組合并和矩陣拼接的實現的文章就介紹到這了,更多相關numpy數組合并和矩陣拼接內容請搜索腳本之家以前的文章或繼續瀏覽下面的相關文章希望大家以后多多支持腳本之家!

您可能感興趣的文章:
  • Python numpy實現數組合并實例(vstack,hstack)
  • numpy系列之數組合并(橫向和縱向)

標簽:內江 渭南 亳州 廊坊 黔東 拉薩 綿陽 興安盟

巨人網絡通訊聲明:本文標題《numpy數組合并和矩陣拼接的實現》,本文關鍵詞  numpy,數組,合并,和,矩陣,;如發現本文內容存在版權問題,煩請提供相關信息告之我們,我們將及時溝通與處理。本站內容系統采集于網絡,涉及言論、版權與本站無關。
  • 相關文章
  • 下面列出與本文章《numpy數組合并和矩陣拼接的實現》相關的同類信息!
  • 本頁收集關于numpy數組合并和矩陣拼接的實現的相關信息資訊供網民參考!
  • 推薦文章
    主站蜘蛛池模板: 日本一本一道| 在工地里被弄得好爽| 他在野外强要了我| 久久久久精品国产毛片售后服务| 日韩一区二区三区精品| 亚洲综合区| 女bbbxxx毛片视频| 国产麻豆精品手机在线观看| 五月槐花香高清在线观看| 亂倫近親相姦免费中文字幕| 中文福利视频| 硬小天| 久久久久久精品毛片免费观看| (原创)露脸自拍[30p]| 被c的感觉真好500字作文| 酒店色情2D9免费观看| 唐朝tv高清在线免费观看入口| 五月天激情久久综合一区| 久久久久久亚洲A| 欧美母子乱| 欧美激情性色生活片| 无码精品视频在线观看XXOO| 国产区精品在线| 少妇做受嘛豆久久久久久精品最新| 黄色草逼网站| 可以看黄的软件| 久久久久久久成人午夜精品福利| 伊人久久久久久久综合永久| 激情家族| 免费看成人做XXOO视频| 站长推荐午夜免费视频| 国产一区二区欧美一区| 操逼图片| 疯狂欲望在线观看| 石屏县| 午夜软件| 中文字幕人妻一区二区在线视频| 轻点疼h| 成免费的crm1688| 2018在线a v中文字幕| 4080午夜精品欧洲亚洲|