Быстрая линейная регрессия в массиве 4D - PullRequest
0 голосов
/ 03 июня 2019

У меня есть 4D массив измерений [6,89,384,384], соответствующий [v,z,y,x].Теперь я хочу выполнить линейную регрессию в v для каждого [z,y,x], то есть linear-reg([:,z,y,x]), и сохранить наклон в новом массиве.Какой самый быстрый способ сделать это?

Я пробовал scipy.stats.linregress и np.polyfit.Оба из которых занимают около 3 минут.завершить.Ниже моя текущая реализация.

x_linfit = np.linspace(0,10,6)
for z in range(z_dim):
    for y in range(y_dim):
        for x in range(x_dim):
            data = data_frames[:,z,y,x]
            tmp_linfit = np.polyfit(x_linfit,data, deg=1)
            data_fit[z,x,y] = tmp_linfit[0]

Может ли это быть сделано более умным способом?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...