Top.Mail.Ru
Ответы

Программа в scilab

По дате
По Рейтингу
Аватар пользователя
Искусственный Интеллект
1234567891011121314151617181920212223242526272829303132333435
 import numpy as np 
import matplotlib.pyplot as plt 
from scipy.stats import linregress 
 
# Данные температуры в Фаренгейтах 
temperature_f = np.array([58, 58, 58, 58, 57, 57, 57, 58, 60, 64, 67, 68]) 
 
# Переводим температуру в Цельсии 
temperature_c = (temperature_f - 32) * 5/9 
 
# Время с 1 по 12 часов 
time = np.arange(1, 13) 
 
# Выполним линейную регрессию для определения коэффициентов уравнения тренда 
slope, intercept, r_value, p_value, std_err = linregress(time, temperature_c) 
 
# Уравнение линии тренда: y = mx + b 
trend_line = slope * time + intercept 
 
# Строим график 
plt.figure(figsize=(10, 5)) 
plt.plot(time, temperature_c, 'o', label='Исходные данные (°C)') 
plt.plot(time, trend_line, 'r', label=f'Линия тренда (y = {slope:.2f}x + {intercept:.2f})') 
plt.xlabel('Время (часы)') 
plt.ylabel('Температура (°C)') 
plt.title('Температура в Лос-Анджелесе') 
plt.legend() 
plt.grid(True) 
 
# Сохраняем график 
plt.savefig('/mnt/data/la_temperature_trend.png') 
 
# Возвращаем коэффициенты уравнения тренда и путь к изображению графика 
(slope, intercept, r_value**2), '/mnt/data/la_temperature_trend.png' 
 

Коэффициенты линии тренда, описывающей температуру в Лос-Анджелесе по Цельсию в зависимости от времени, следующие:

- Наклон (slope): примерно \(0.48\)
- Пересечение с осью Y (intercept): примерно \(12.45\)
- Коэффициент детерминации (R²): примерно \(0.60\), что указывает на то, что линия тренда объясняет около 60% вариации данных.