2016-09-20 4 views
1

43142行と2列を含む.CSVファイル(リスト)があります。Python-区間の最大値を取得

リストの値をプロットのy対xは: x vs y values of list.CSV

私は何をしたいのかaproximate与えられ、次のとおりです。

import numpy as np 
    import matplotlib.pyplot as plt 

    filename=np.genfromtxt(list.CSV,delimiter=',') 
    plt.plot(filename[:,0],filename[:,1]) 

私は、複数の極大値を持っており、このようになりますグラフが得ますピークが位置するx値の間隔で、リストの最大値と対応するインデックスを見つけます。間隔X =(2720,2730)における最大Y値があるかどう

例えばは(2図参照)、iが値が最大となる正確な指標を見つけたいです。

答えて

0

あなたが範囲xmin < x < xmaxを持っている場合、これは動作するはずです(x=filename[:,0]y=filename[:,1]を取る):

idx = np.where(y==np.max(y[(x>xmin)&(x<xmax)]))[0][0] 

これは、与えられた範囲内の最大のy値に対応する単一のインデックスを返します。

+0

ありがとうございました。これはyが最大であるインデックスを私に与えますか?またはnp.argmaxを使用する必要がありますか? –

+0

これは、xmin

+0

しました。遅れて申し訳ありません!ありがとうございました –

関連する問題