ホームページ  >  記事  >  バックエンド開発  >  `np.c_[...]` を使用して NumPy 配列に追加の列を追加するにはどうすればよいですか?

`np.c_[...]` を使用して NumPy 配列に追加の列を追加するにはどうすればよいですか?

Barbara Streisand
Barbara Streisandオリジナル
2024-11-05 01:40:01874ブラウズ

How do I add an extra column to a NumPy array using `np.c_[...]`?

NumPy 配列に追加の列を追加する

Python の科学計算用の強力なライブラリである NumPy は、さまざまな操作方法を提供します。多次元データ。その中には、配列に列を追加するタスクもあります。配列の次元を拡張する便利で効率的な方法を提供する特殊な NumPy 関数を使用して、これを実現する方法を見てみましょう。

np.r_[...] と np.c_[.. .]

2D 配列に追加の列を追加する場合、2 つの便利な NumPy 関数は、np.r_[...] (行の追加用) と np.c_[...] (行の追加用) です。列を追加します)。 np.vstack や np.hstack とは異なり、これらの関数は括弧 () の代わりに角括弧 [] を使用します。

次の 2D 配列を考えてみましょう:

<code class="python">import numpy as np

a = np.array([
    [1, 2, 3],
    [2, 3, 4],
])</code>

ゼロの列を追加するには2 番目の軸、np.c_[...] を使用:

<code class="python">b = np.c_[a, np.zeros(a.shape[0])]</code>

これにより、目的の出力が得られます:

<code class="python">b = np.array([
    [1, 2, 3, 0],
    [2, 3, 4, 0],
])</code>

追加の例

np.r_[...] と np.c_[...] は、配列に行/列を追加する多用途性を提供します。さらにいくつかの例を示します。

<code class="python">N = 3
A = np.eye(N)

# Add a column
np.c_[A, np.ones(N)]

# Add two columns
np.c_[np.ones(N), A, np.ones(N)]

# Add a row
np.r_[A, [A[1]]]

# Mix vectors and scalars
np.r_[A[0], 1, 2, 3, A[1]]

# Use lists or tuples
np.r_[A[0], [1, 2, 3], A[1]]
np.r_[A[0], (1, 2, 3), A[1]]

# Use Python slice syntax
np.r_[A[0], 1:4, A[1]]</code>

角括弧と丸括弧を理解する

np.r_[...] と np に注意することが重要です。 c_[...] は角括弧を使用しますが、np.vstack と np.hstack は丸括弧を使用します。これは、角かっこ内で使用されると、Python が 1:4 をスライス オブジェクトとして解釈するためです。このスライス オブジェクトは値 1、2、および 3 を表し、これらは配列に追加されます。

以上が`np.c_[...]` を使用して NumPy 配列に追加の列を追加するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。