Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
学ぶ インデックス付き部分配列への値の代入 | インデックスとスライシング
NumPy基礎
セクション 2.  10
single

single

bookインデックス付き部分配列への値の代入

メニューを表示するにはスワイプしてください

インデックス付き配列では、より興味深い操作が可能になります。ここでは、主に1次元および2次元の部分配列に焦点を当てます(3次元部分配列は実際にはほとんど使用されません)。

まずはスライスへの値の代入から始めます。一般的な構文は slice = values です。ここで、slice は配列のスライス、values は代入する値です。

values の形式の例:

  • 単一のスカラー(数値)
  • スライスと同じサイズの1次元配列(スライスが1次元の場合)、または2次元スライスの場合は第2次元のサイズ
  • 2次元スライスと同じ形状の2次元配列
123456789101112131415161718
import numpy as np array_1d = np.array([1, 4, 6, 2, 9]) # Assigning an array to the slice of array_1d array_1d[1:-1] = np.array([3, 5, 7]) print(array_1d) # Assigning a scalar to the slice of array_1d array_1d[1:-1] = 5 print(array_1d) array_2d = np.array([[1, 2, 3], [4, 5, 6], [7, 8, 9], [10, 11, 12]]) # Assigning a 2D array to the slice of array_2d array_2d[1:3, 1:] = np.array([[20, 21], [40, 41]]) print(array_2d) # Assigning a 1D array to the slice of array_2d array_2d[1:3, 1:] = [50, 51] print(array_2d) # Assigning a scalar to the slice of array_2d array_2d[1:3, 1:] = 30 print(array_2d)
copy

スカラーを1次元スライスに代入すると、そのスカラーがスライス内のすべての要素に代入されます。1次元配列2次元スライスに代入すると、その1次元配列がスライス内のすべての1次元配列に代入されます。スカラーを2次元スライスに代入する場合も、1次元スライスと同様に動作します。

整数配列インデックスで指定した部分配列への値の代入も、スライスの場合と同様に動作します。ブールインデックスで指定した部分配列への値の代入も、1次元スライスと同様に動作します。

タスク

スワイプしてコーディングを開始

製品の価格と評価のデータセットを管理しています。価格は prices 配列に、評価(10点満点)は ratings 配列に格納されています。次の条件に基づいて値を更新してください。

  1. 20 のうち10より大きいすべての要素にスカラー値 prices を代入します。
  2. 9 の2行目の最後の2つの要素に要素を 8ratings とする NumPy 配列を代入します。正の行インデックスとスライスを使用してください。

解答

Switch to desktop実践的な練習のためにデスクトップに切り替える下記のオプションのいずれかを利用して、現在の場所から続行する
すべて明確でしたか?

どのように改善できますか?

フィードバックありがとうございます!

セクション 2.  10
single

single

AIに質問する

expand

AIに質問する

ChatGPT

何でも質問するか、提案された質問の1つを試してチャットを始めてください

some-alt