I have daily stock price data from yahoo finance in a data frame called price_data .
I would like to add a column to this that provides the set value from the time trend in the Adj Close column.
Here is the data structure that I use:
In [41]: type(price_data) Out[41]: pandas.core.frame.DataFrame In [42]: list(price_data.columns.values) Out[42]: ['Open', 'High', 'Low', 'Close', 'Volume', 'Adj Close'] In [45]: type(price_data.index) Out[45]: pandas.tseries.index.DatetimeIndex
What is the best way to achieve this in Python?
Aside, the following is achieved in R-language
all_time_fitted <- function(data) { all_time_model <- lm(Adj.Close ~ Date, data=data) fitted_value <- predict(all_time_model) return(fitted_value) }
Here are some sample data:
In [3]: price_data Out[3]: Open High Low Close Volume Adj Close Date 2005-09-27 21.05 21.40 19.10 19.30 961200 19.16418 2005-09-28 19.30 20.53 19.20 20.50 5747900 20.35573 2005-09-29 20.40 20.58 20.10 20.21 1078200 20.06777 2005-09-30 20.26 21.05 20.18 21.01 3123300 20.86214 2005-10-03 20.90 21.75 20.90 21.50 1057900 21.34869 2005-10-04 21.44 22.50 21.44 22.16 1768800 22.00405 2005-10-05 22.10 22.31 21.75 22.20 904300 22.04377
source share