Spaces:
Sleeping
Sleeping
""" | |
Stores all transformations | |
""" | |
def createLag(data, amt=10): | |
""" | |
Create a lag inside dataframe, in business days | |
:param pandas.DataFrame data: | |
:param int amt: Unit of lag period | |
:return: Copy of pandas Dataframe | |
""" | |
import pandas as pd | |
if 'ds' in data: | |
copy = data.copy() | |
copy['ds'] = copy['ds'] + pd.tseries.offsets.BusinessDay(amt) | |
return copy | |
else: | |
print(f"No 'ds' column found inside dataframe") | |
return data | |
def scaleStandard(df_col): | |
""" | |
Fits and returns a standard scaled version of a dataframe column | |
""" | |
import pandas as pd | |
from sklearn.preprocessing import StandardScaler | |
scaler = StandardScaler() | |
df_col = scaler.fit_transform(df_col) | |
df_col = pd.DataFrame(df_col) | |
return df_col, scaler | |
def logReturn(data, df_col): | |
""" | |
Perform log return for a dataframe column | |
""" | |
import numpy as np | |
new_col = np.log1p(data[df_col].pct_change()) | |
return new_col |