2016-10-17 3 views
2

おはよう、StackOverflow。 最近、私は可能な限り簡潔に概説しようとするPythonプログラムに取り組んできました。Pythonをインデックスではなく値でリスト化する

本質的には、私のプログラムはグラフをプロットしてから関数にフィットします。考えてみます。this graph. グラフはプロットしても問題ありませんが、データは一定間隔で定期的に表示されるので、OrbitalPeriod(1.76358757)、最初にx値を入力してから、すべての点を繰り返してOrbitalPeriodとし、次の長さの範囲で同じことを実行してください。OrbitalPeriod

私は、フォーム

Bは、あなたがに含めたい最初と最後の要素のインデックスである
croppedList = List[a:b] 

のPythonでリストをスライスする方法があることを知っています新しいリスト。しかし、私は、それぞれの値についてどのような指標が出るのか、あるいは各値の間にどれくらいの数の値が入るのか分かりません。OrbitalPeriodサイズの間隔。

私が擬似コードでしたいことは、このようになります。 はxの値である

croppedList = fullListドメインの[A +(N * OrbitalPeriod)、A +(N + 1 * OrbitalPeriod)]

最初の意味のあるデータポイントの

インデックスの代わりに値を受け入れるこの方法またはクロッピング方法の回避策がある場合は、私に知らせてください。ありがとう!あなたはnumpyで作業している場合

+0

が間隔に(*十分な*)接近しているリスト要素のインデックスを返す関数を書いてみ括弧の中にそれを使用することができます。リストを反復し、各要素を最初の間隔の値と照らし合わせてチェックします。インデックスを保存したら、間隔を増やしてリスト要素のチェックを続けます。 [enumerate](https://docs.python.org/3/library/functions.html#enumerate)が役に立ちます。 – wwii

答えて

0

、あなたは

m = x 
M = x + OrbitalPeriod 
croppedList = List[m <= List] 
croppedList = croppedList[croppedList < M] 
関連する問題