Q&A
解決済
1回答
756閲覧
総合スコア16
NumPyはPythonのプログラミング言語の科学的と数学的なコンピューティングに関する拡張モジュールです。
Pythonは、コードの読みやすさが特徴的なプログラミング言語の1つです。 強い型付け、動的型付けに対応しており、後方互換性がないバージョン2系とバージョン3系が使用されています。 商用製品の開発にも無料で使用でき、OSだけでなく仮想環境にも対応。Unicodeによる文字列操作をサポートしているため、日本語処理も標準で可能です。
0グッド
0クリップ
投稿2020/02/21 04:03
0
A=[11,12,13,14,15,16,17,18,19,20] から特定の列:1,3,6,7列目の要素を抽出して、 B=[12,14,17,18] を算出したいです。 for文を回して1個1個抽出しても良いのですが、記載が長いです。
matlabの場合は、抽出したい配列数を C=[1,3,6,7]と定義して、 B=A[C] とすれば、目的の値をシンプルなコードで得られますが、 pythonで同様記載はできないでしょうか。
気になる質問をクリップする
クリップした質問は、後からいつでもMYページで確認できます。
またクリップした質問に回答があった際、通知やメールを受け取ることができます。
質問へのコメント
回答1件
ベストアンサー
numpy 配列にすれば、fancy indexing という機能で指定した添字の値だけを抽出できます。
python1import numpy as np 2 3A = np.array([11, 12, 13, 14, 15, 16, 17, 18, 19, 20]) 4B = [1, 3, 6, 7] 5 6print(A[B]) # [12 14 17 18] 7 8# 他にいくつかサンプル例 9print(A[[0, 0, 1, 2]]) # [11 11 12 13] 10print(A[A % 2 == 0]) # [12 14 16 18 20] 11print(A[A > 15]) # [16 17 18 19 20]
python
1import numpy as np 2 3A = np.array([11, 12, 13, 14, 15, 16, 17, 18, 19, 20]) 4B = [1, 3, 6, 7] 5 6print(A[B]) # [12 14 17 18] 7 8# 他にいくつかサンプル例 9print(A[[0, 0, 1, 2]]) # [11 11 12 13] 10print(A[A % 2 == 0]) # [12 14 16 18 20] 11print(A[A > 15]) # [16 17 18 19 20]
投稿2020/02/21 04:15
総合スコア21962
回答へのコメント
2020/02/21 04:27
あなたの回答
tips
太字
斜体
打ち消し線
見出し
引用テキストの挿入
コードの挿入
リンクの挿入
リストの挿入
番号リストの挿入
表の挿入
水平線の挿入
プレビュー
15分調べてもわからないことはteratailで質問しよう!
ただいまの回答率85.29%
質問をまとめることで思考を整理して素早く解決
テンプレート機能で簡単に質問をまとめる
list配列から特定の列番号の要素を抜き取って
2020/02/21 04:27