質問編集履歴
3
タイトルに具体性をもたせた
title
CHANGED
|
@@ -1,1 +1,1 @@
|
|
|
1
|
-
pythonのfor文を使わない書き方, 高速化について
|
|
1
|
+
pythonのL2ノルムを取るプログラムのfor文を使わない書き方, 高速化について
|
body
CHANGED
|
File without changes
|
2
ソースコードにコメントを追加
title
CHANGED
|
File without changes
|
body
CHANGED
|
@@ -1,16 +1,19 @@
|
|
|
1
1
|
### 前提・実現したいこと
|
|
2
|
-
(130433, 2)のnumpyの配列Aがあります。 2次元目でL2ノルムをとった値によってAを割ることで配列Aの値を正規化するプログラムのfor文を使わない書き方を教えてほしいです。
|
|
2
|
+
(130433, 2)のnumpyの配列Aがあります。 2次元目でL2ノルムをとった値によってAを割ることで配列Aの値を正規化するプログラムの**for文を使わない書き方を教えてほしい**です。
|
|
3
3
|
以下のプログラムにて実行はできているのですが、for文を使っていたりと実行時間が長いです。
|
|
4
4
|
map関数等をつかったほうがいいと思うのですが、あまりなれておらず調べられませんでした。
|
|
5
5
|
|
|
6
6
|
どの関数を使ったほうがいい等簡単なアドバイスでも良いのでいただけるとありがたいです。
|
|
7
7
|
|
|
8
8
|
|
|
9
|
+
|
|
9
10
|
### 該当のソースコード
|
|
10
11
|
|
|
11
12
|
```python
|
|
12
13
|
print(A.shape)
|
|
13
14
|
# (130433, 2)
|
|
15
|
+
|
|
16
|
+
# abs_Aに正規化した値を保存
|
|
14
17
|
abs_A = np.zeros((A.shape[0], A.shape[1]))
|
|
15
18
|
for i in range(A.shape[0]):
|
|
16
19
|
abs_A = abs_A/np.linalg.norm(A, axis=1)[i]
|
1
質問文の校正
title
CHANGED
|
@@ -1,1 +1,1 @@
|
|
|
1
|
-
python
|
|
1
|
+
pythonのfor文を使わない書き方, 高速化について
|
body
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
### 前提・実現したいこと
|
|
2
|
-
(130433, 2)のnumpyの配列Aがあります。 2次元目でL2ノルムをとった値
|
|
2
|
+
(130433, 2)のnumpyの配列Aがあります。 2次元目でL2ノルムをとった値によってAを割ることで配列Aの値を正規化するプログラムのfor文を使わない書き方を教えてほしいです。
|
|
3
3
|
以下のプログラムにて実行はできているのですが、for文を使っていたりと実行時間が長いです。
|
|
4
4
|
map関数等をつかったほうがいいと思うのですが、あまりなれておらず調べられませんでした。
|
|
5
5
|
|