Добрый вечер, StackOverflow. В последнее время я боролся с программой Python, которую я постараюсь кратко описать как можно скорее.Cropping Python списки по значению вместо индекса
По сути, мои графики программы (а затем подходят для функций). Рассмотрим this graph. Графические графики просто прекрасны, но я бы хотел, чтобы это сделало немного больше: поскольку данные периодичны в течение интервала OrbitalPeriod (1.76358757), я бы хотел, чтобы это началось с нашего first x значение, а затем итеративно заговорить все точки OrbitalPeriod оттуда, а затем сделать то же самое в следующей области длины OrbitalPeriod.
Я знаю, что есть способ, чтобы нарезать списки в Python формы
croppedList = List[a:b]
где и б являются индексами первых и последних элементов, которые вы хотели бы включить в новый список, соответственно. Тем не менее, я понятия не имею, какие индексы будут для каждого из значений, или сколько значений приходится на каждый интервал OrbitalPeriod.
Что я хочу делать в псевдокоде, выглядит примерно так.
croppedList = перенаправление на домене [а + (N * OrbitalPeriod), а + (N + 1 * OrbitalPeriod)]
где является й-значением первой значащей точки данных.
Если у вас есть обходной путь для этого или метод обрезки, который будет принимать значения вместо индексов в качестве аргументов, сообщите мне. Благодаря!
Попробуйте написать функцию, которая возвращает индексы элементов списка, которые близки (* достаточно *) интервалам. Вы можете перебирать список и проверять каждый элемент на значение первого интервала, когда вы находите его, сохраняете индекс, затем увеличиваете интервал и продолжаете проверку элементов списка. [enumerate] (https://docs.python.org/3/library/functions.html#enumerate), вероятно, поможет. – wwii