Numpy 配列をコピーせずに連結する
2023-07-30 16:49:40
質問
Numpyでは、2つの配列を端から端まで連結することができます。
np.append
または
np.concatenate
:
>>> X = np.array([[1,2,3]])
>>> Y = np.array([[-1,-2,-3],[4,5,6]])
>>> Z = np.append(X, Y, axis=0)
>>> Z
array([[ 1, 2, 3],
[-1, -2, -3],
[ 4, 5, 6]])
しかし、これらは入力配列のコピーを作成します。
>>> Z[0,:] = 0
>>> Z
array([[ 0, 0, 0],
[-1, -2, -3],
[ 4, 5, 6]])
>>> X
array([[1, 2, 3]])
二つの配列を連結して
ビュー
に連結する方法はありますか?そのためには
np.ndarray
サブクラスが必要でしょうか?
どのように解決するのですか?
Numpy配列に属するメモリは連続である必要があります。別々に割り当てた場合、メモリ上にランダムに散らばってしまい、ビューNumpy配列として表現する方法がありません。
必要な配列の数があらかじめ分かっている場合は、代わりにあらかじめ確保した1つの大きな配列から始めて、それぞれの小さな配列は大きな配列に対するビュー(例えばスライスで得られる)とすることができます。
関連
-
[解決済み] NumPyの配列を切り詰めずに、完全に表示するにはどうしたらよいですか?
-
[解決済み] Pythonで2つのリストを連結する方法は?
-
[解決済み] 改行やスペースを入れずに印刷する方法
-
[解決済み] numpyの配列を初期化する
-
[解決済み] NumPyの2次元配列のスライス、またはnxn配列(n>m)からmxmの部分行列を取り出すには?
-
[解決済み] dict を txt ファイルに書き、それを読み取る?
-
[解決済み] matplotlib でプロットの軸、目盛、ラベルの色を変更する方法
-
[解決済み] Pandasを使って、既存のExcelファイルに新しいシートを保存する方法は?
-
[解決済み] pycharmがタブをスペースに自動変換する
-
[解決済み] あるメソッドが複数の引数のうち1つの引数で呼び出されたことを保証する
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
[解決済み] 前月の日時オブジェクトを返す
-
[解決済み] Jupyterノートブックでenv変数を設定する方法
-
[解決済み] Pythonのキャッシュライブラリはありますか?
-
[解決済み] Pythonでコード行間にかかる時間を測定するには?
-
[解決済み] Spyderを仮想環境で動作させるには?
-
[解決済み] SQLAlchemy: 日付フィールドをフィルタリングする方法は?
-
[解決済み] ファブリック経由でデプロイユーザとしてvirtualenvを有効化する
-
[解決済み] 値で列挙名を取得する [重複]。
-
[解決済み] python-requests モジュールからのすべてのリクエストをログに記録します。
-
[解決済み] Pythonの文字列の前にあるbという接頭辞は何を意味するのですか?