最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

NumPy的hstack函數(shù)詳細(xì)教程

 更新時(shí)間:2026年01月06日 10:56:59   作者:我愛派生  
np.hstack()是NumPy庫(kù)中用于水平堆疊數(shù)組的函數(shù),本文就來介紹一下NumPy的hstack函數(shù)的使用,文中通過示例代碼介紹的非常詳細(xì),需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧

`np.hstack()`是NumPy中用于水平(按列)堆疊數(shù)組的函數(shù)(這意味著它將數(shù)組在第二個(gè)軸(即列方向)上堆疊,但是要求除第二個(gè)軸外其他軸的大小必須相同。下面通過詳細(xì)的解釋和示例來學(xué)習(xí)這個(gè)函數(shù)。

1. 函數(shù)基本語(yǔ)法

numpy.hstack(tup)

參數(shù):
- `tup`:包含要堆疊數(shù)組的序列(通常是元組或列表),所有數(shù)組必須具有相同的形狀(除了第二個(gè)軸,即列方向)

返回值:
- 堆疊后的數(shù)組

2. 一維數(shù)組的堆疊

一維數(shù)組的水平堆疊會(huì)創(chuàng)建一個(gè)更長(zhǎng)的一維數(shù)組:

import numpy as np

# 一維數(shù)組示例
a = np.array([1, 2, 3])
b = np.array([4, 5, 6])

print("a:", a)
print("b:", b)
print("a.shape:", a.shape)
print("b.shape:", b.shape)

result = np.hstack((a, b))
print("hstack result:", result)
print("result.shape:", result.shape)

輸出:

a: [1 2 3]
b: [4 5 6]
a.shape: (3,)
b.shape: (3,)
hstack result: [1 2 3 4 5 6]
result.shape: (6,)

3. 二維數(shù)組的堆疊

二維數(shù)組的水平堆疊會(huì)增加列數(shù):

# 二維數(shù)組示例
a = np.array([[1, 2], [3, 4]])
b = np.array([[5, 6], [7, 8]])

print("a:")
print(a)
print("b:")
print(b)
print("a.shape:", a.shape)
print("b.shape:", b.shape)

result = np.hstack((a, b))
print("hstack result:")
print(result)
print("result.shape:", result.shape)

輸出:

a:
[[1 2]
 [3 4]]
b:
[[5 6]
 [7 8]]
a.shape: (2, 2)
b.shape: (2, 2)
hstack result:
[[1 2 5 6]
 [3 4 7 8]]
result.shape: (2, 4)

4. 三維數(shù)組的堆疊

對(duì)于三維數(shù)組,`hstack`會(huì)在第二個(gè)維度(列)上堆疊:

# 三維數(shù)組示例
a = np.random.randn(2, 3, 4)
b = np.random.randn(2, 2, 4)

print("a.shape:", a.shape)
print("b.shape:", b.shape)

result = np.hstack((a, b))
print("result.shape:", result.shape)

輸出:

a.shape: (2, 3, 4)
b.shape: (2, 2, 4)
result.shape: (2, 5, 4)

5. 注意事項(xiàng)

1. 形狀要求:所有輸入數(shù)組在除了第二個(gè)軸以外的所有軸上必須具有相同的形狀
2. 錯(cuò)誤示例
 

   # 這會(huì)報(bào)錯(cuò),因?yàn)樾袛?shù)不同
   a = np.array([[1, 2], [3, 4]])
   b = np.array([[5, 6, 7]])  # 形狀不匹配
   # result = np.hstack((a, b))  # ValueError

7. 與其他堆疊函數(shù)比較

- `vstack()`:垂直堆疊(按行)
- `dstack()`:深度堆疊(沿第三個(gè)軸)
- `concatenate()`:通用連接函數(shù),可以指定軸```python
比較不同堆疊方法

a = np.array([[1, 2], [3, 4]])
b = np.array([[5, 6], [7, 8]])

print("hstack (水平):")
print(np.hstack((a, b)))

print("vstack (垂直):")
print(np.vstack((a, b)))

print("dstack (深度):")
print(np.dstack((a, b)))

輸出

hstack (水平):
[[1 2 5 6]
 [3 4 7 8]]
vstack (垂直):
[[1 2]
 [3 4]
 [5 6]
 [7 8]]
dstack (深度):
[[[1 5]
  [2 6]]

 [[3 7]
  [4 8]]]

8. 實(shí)際應(yīng)用示例

# 合并特征矩陣
features1 = np.random.randn(100, 5)  # 100個(gè)樣本,5個(gè)特征
features2 = np.random.randn(100, 3)  # 100個(gè)樣本,3個(gè)特征

combined_features = np.hstack((features1, features2))
print("原始特征形狀:", features1.shape, features2.shape)
print("合并后特征形狀:", combined_features.shape)

通過這個(gè)教程,你應(yīng)該能夠理解`hstack`函數(shù)的工作原理和適用場(chǎng)景。記住關(guān)鍵點(diǎn)是:**水平堆疊會(huì)增加數(shù)組的列數(shù)(第二個(gè)維度)**,并且所有輸入數(shù)組在除了第二個(gè)維度外的其他維度上必須具有相同的形狀。

到此這篇關(guān)于NumPy的hstack函數(shù)詳細(xì)教程的文章就介紹到這了,更多相關(guān)NumPy hstack函數(shù)內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

最新評(píng)論

宜阳县| 武邑县| 樟树市| 井冈山市| 连平县| 罗源县| 泸水县| 宜兰市| 庐江县| 锦州市| 合水县| 新宾| 锦州市| 罗江县| 崇阳县| 蒙阴县| 财经| 东山县| 金华市| 义马市| 连云港市| 石家庄市| 嘉善县| 五大连池市| 共和县| 开封县| 凤翔县| 昌图县| 茂名市| 潼关县| 岢岚县| 榆中县| 孟村| 徐汇区| 陵水| 嘉荫县| 泗水县| 新邵县| 武宁县| 雷波县| 出国|