File size: 696 Bytes
7ab79fb
 
d13a277
 
 
7ab79fb
 
 
d13a277
 
 
 
 
7ab79fb
 
 
 
 
 
 
 
 
 
 
 
 
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
import statsmodels.api as sm
import pandas as pd
import streamlit as st

model_types = ['Additive', 'Multiplicative']


def decompose_time_series(data):
    selected_model_type = st.radio(
        'Model type:', model_types)
    decomposition = sm.tsa.seasonal_decompose(
        data, model=selected_model_type.lower())
    return [decomposition, selected_model_type]


def extract_trend_seasonal_resid(decomposition):
    trend = decomposition.trend
    seasonal = decomposition.seasonal
    residual = decomposition.resid

    return [trend, seasonal, residual]


def create_trend_seasonal_df(trend, seasonal):
    frame = {'Trend': trend, 'Seasonal': seasonal}
    return pd.DataFrame(frame)