2015-05-24 2 views
0

Я довольно новичок в python и начал с 2.7, так как это то, что используется на работе. Я пытаюсь узнать об интерполяции. Все плохо. Я пытаюсь импортировать список, состоящий из 1000 и 6500 записей. Это довольно легко. Жесткая часть приходит, когда я пытаюсь понять, как вставить 9 пробелов между каждым элементом в списке, а затем интерполировать 9 шагов между ними.Пытаясь использовать interp1d

Я хочу завершить запись нового текстового файла. Я могу открыть, прочитать и написать новый файл. То, что мне нужно сделать в середине, выглядит недосягаемым. Все, что я читал, имеет второй массив, и я не понимаю, как его настроить для моей задачи, или если мне это нужно. Любая помощь будет принята с благодарностью. FYI, список читаемых чисел имеет 3 знака после запятой.

+0

Что вы пробовали? Вы, скорее всего, получите ответ, если ваш вопрос включает пример вашего ввода, ваш ожидаемый результат, то, что вы пытались получить, что вывести и ваш фактический результат, а также любые полученные вами ошибки. – IanAuld

ответ

0

Это поможет решить вашу проблему с равномерно распределенными данными. Подумайте о том, чтобы опубликовать часть своего собственного кода в будущем, чтобы ответы могли быть адаптированы к вашей конкретной сложности.

from scipy import interpolate 
import numpy as np 

def interp_function(sx, sy, tau = 10): 

    sy_fnc = interpolate.splrep(sx, sy, s=0) 
    tau_interp = float(sx.max() - sx.min())/float(tau * len(sx)) 
    sx_interp = np.arange(sx[0], sx[len(sx)-1], tau_interp)  
    sy_interp = interpolate.splev(sx_interp, sy_fnc, der=0) 
    return sx_interp, sy_interp 
Смежные вопросы