2

次の設定があるとします。

x=np.array(range(0,100))
y=x**0.5
z=x**2

4 から 8 までの y のすべての値を取得し、これらの y 値の行だけでなく、対応する z 値の行も含む新しい配列を作成するにはどうすればよいでしょうか?

つまり、x の 25 は 4 から 8 の間の 5 の y 値を持ちます。私はこの値が欲しいのですが、下の行の 625 の z 値も欲しいです。

数学の方程式は単なる例であり、公式はベッセル関数を含む何でもかまいません。

ありがとう

4

1 に答える 1

2
>>> np.vstack((y, z))[:,(y >= 4) & (y <= 8)]
array([[  4.00000000e+00,   4.12310563e+00,   4.24264069e+00,
          4.35889894e+00,   4.47213595e+00,   4.58257569e+00,
          4.69041576e+00,   4.79583152e+00,   4.89897949e+00,
          ...
          7.81024968e+00,   7.87400787e+00,   7.93725393e+00,
          8.00000000e+00],
       [  2.56000000e+02,   2.89000000e+02,   3.24000000e+02,
          3.61000000e+02,   4.00000000e+02,   4.41000000e+02,
          ...
          3.72100000e+03,   3.84400000e+03,   3.96900000e+03,
          4.09600000e+03]])

ここでは、 を含む行とvstack()を含む行の 2 つの行を持つ行列を作成します。次に、基準を満たさない列を除外します。yz[...]

于 2012-11-06T17:26:21.707 に答える