私は線の方程式+/-幅20に基づいて値をnanに代入したいと思います。ここに記載されているeemRパッケージのeem_remove_scatteringメソッドで行われているように、ラマン2次散乱補正を実装しようとしています: https://cran.r-project.org/web/packages/eemR/vignettes/introduction.html このメソッドは表示されません。2次元配列中の任意の行の値をNANに代入
import numpy as np
ex = np.array([240, 245, 250, 255, 260, 265, 270, 275, 280, 285, 290, 295, 300,
305, 310, 315, 320, 325, 330, 335, 340, 345, 350, 355, 360, 365,
370, 375, 380, 385, 390, 395, 400, 405, 410, 415, 420, 425, 430,
435, 440, 445, 450])
em = np.array([300, 302, 304, 306, 308, 310, 312, 314, 316, 318, 320, 322, 324,
326, 328, 330, 332, 334, 336, 338, 340, 342, 344, 346, 348, 350,
352, 354, 356, 358, 360, 362, 364, 366, 368, 370, 372, 374, 376,
378, 380, 382, 384, 386, 388, 390, 392, 394, 396, 398, 400, 402,
404, 406, 408, 410, 412, 414, 416, 418, 420, 422, 424, 426, 428,
430, 432, 434, 436, 438, 440, 442, 444, 446, 448, 450, 452, 454,
456, 458, 460, 462, 464, 466, 468, 470, 472, 474, 476, 478, 480,
482, 484, 486, 488, 490, 492, 494, 496, 498, 500, 502, 504, 506,
508, 510, 512, 514, 516, 518, 520, 522, 524, 526, 528, 530, 532,
534, 536, 538, 540, 542, 544, 546, 548, 550, 552, 554, 556, 558,
560, 562, 564, 566, 568, 570, 572, 574, 576, 578, 580, 582, 584,
586, 588, 590, 592, 594, 596, 598, 600])
X, Y = np.meshgrid(ex, em)
z = np.sin(X) + np.cos(Y)
私は適用したい式はEM =である - 私はこの行を(交差配列内のすべての値を設定したい2 EX /(0.00036 * EX-1)+ 500 +/- 20)をnansに設定します。単一の要素をnansに設定するのは簡単ですが、この方程式を配列に適用し、この行と交差する値だけをnansに設定するPython関数を見つけることはできませんでした。 希望する出力は、zと同じ次元を持つが、nanに相当する線と交差する値を持つ新しい配列になります。どのように進むべきかについての提案は非常に高く評価されます。フォームnp.where("condition for intersection", np.nan, z)
で