Wie füge ich mit „np.c_[...]' eine zusätzliche Spalte zu einem NumPy-Array hinzu?

Barbara Streisand
Freigeben: 2024-11-05 01:40:01
Original
864 Leute haben es durchsucht

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

Hinzufügen einer zusätzlichen Spalte zu einem NumPy-Array

NumPy, eine leistungsstarke Bibliothek für wissenschaftliches Rechnen in Python, bietet eine Reihe von Manipulationsmethoden mehrdimensionale Daten. Dazu gehört die Aufgabe, einem Array eine zusätzliche Spalte hinzuzufügen. Lassen Sie uns untersuchen, wie Sie dies mithilfe spezieller NumPy-Funktionen erreichen können, die eine bequeme und effiziente Möglichkeit bieten, die Abmessungen Ihrer Arrays zu erweitern.

Mit np.r_[...] und np.c_[.. .]

Zum Hinzufügen einer zusätzlichen Spalte zu einem 2D-Array sind zwei nützliche NumPy-Funktionen np.r_[...] (zum Hinzufügen von Zeilen) und np.c_[...] (für Spalten hinzufügen). Im Gegensatz zu np.vstack und np.hstack verwenden diese Funktionen eckige Klammern [] anstelle von Klammern ().

Betrachten Sie das folgende 2D-Array:

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

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

Um eine Spalte mit Nullen hinzuzufügen die zweite Achse mit np.c_[...]:

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

Dies führt zur gewünschten Ausgabe:

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

Zusätzliche Beispiele

np.r_[...] und np.c_[...] bieten Vielseitigkeit beim Hinzufügen von Zeilen/Spalten zu Arrays. Hier sind einige weitere Beispiele:

<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>
Nach dem Login kopieren

Eckige Klammern vs. runde Klammern verstehen

Es ist wichtig zu beachten, dass np.r_[...] und np. c_[...] verwendet eckige Klammern, während np.vstack und np.hstack runde Klammern verwenden. Dies liegt daran, dass Python 1:4 als Slice-Objekt interpretiert, wenn es in eckigen Klammern verwendet wird. Dieses Slice-Objekt stellt die Werte 1, 2 und 3 dar, die dann dem Array hinzugefügt werden.

Das obige ist der detaillierte Inhalt vonWie füge ich mit „np.c_[...]' eine zusätzliche Spalte zu einem NumPy-Array hinzu?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Neueste Artikel des Autors
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage