«растянуть» массив в Python.Есть ли умный способ сделать это - PullRequest
0 голосов
/ 04 марта 2019

У меня есть эти два массива.Один с номерами сканирования от 1 251, а другой - это время.Здесь пропущено много точек, и это видно только по времени, поскольку я знаю, что время выборки составляет 10 000 Гц, т.е. 10000 выборок в секунду.Если у меня есть время начала и время окончания, а также общее количество необходимых записей, можно ли «растянуть» массив, а затем заполнить nan или что-то, где возникают «пробелы».

Моя первоначальная мысль былапросто начать с первой точки, а затем продолжать добавлять 1/10000 секунды, пока не будет достигнуто конечное время, однако таким образом десятичные дроби не полностью совпадают с исходным временем, и тогда я не знаю, как их сравнить.

Приведенный ниже пример несколько эквивалентен.У меня есть массив, похожий на a, и я знаю, что он должен быть как b, но слишком много десятичных знаков, чтобы просто «создать» b вручную и сравнить при помощи «==»

a = [0.1, 0.2, 0.4, 0.5, 0.6, 0.7, 0.8]
b = [0.1, 0.2, 0.3, 0.4, 0.5, 0.6, 0.7, 0.8, 0.9]

Спасибо :)

1 Ответ

0 голосов
/ 04 марта 2019

Не совсем уверен, что я правильно понял вопрос - пример кода поможет.

Вы можете попробовать использовать библиотеку pandas ... импортировать массив в серию Pandas, а затем использовать функцию интерполяции, чтобы заполнить пропущенныезначения: https://pandas.pydata.org/pandas-docs/stable/reference/api/pandas.Series.interpolate.html

...