2017-11-11 1 views
0

저는 해결 방법이 전혀없는 꽤 복잡한 문제가 있습니다. 저는 데이터의 일별/주별/월별 성장을 계산하려고합니다.파이썬으로 매일/주간/월간 성장을 계산하십시오

난이도는 데이터 포인트를 무작위로 수집한다는 사실에 있습니다. 그래서 우리는 그와 같은 데이터를 가질 수 있습니다

Date | orders 

2017-01-12 | 1992 
2017-01-13 | 2912 
2017-02-10 | 3912 
2017-02-11 | 4112 
2017-02-12 | 4412 
2017-02-16 | 5112 
2017-03-01 | 8112 

나는 데이터의 거대한 양을, 그래서 오랫동안 대기를 방지하기 위해 결과를 저장할 것이다 임시 테이블을 생성하지 않고 실제로이를 구축 할 수있을 거라고 생각하지 않습니다 타임스.

그래서 성장 표 (Google DataStore 사용)를 만드는 것이 좋겠다. ... 나는 거기에 갇혔다. 그걸 해결하는 방법 ...

도움이 감사합니다!

답변

1

많은 반응이 없기 때문에 방금이 장면을 찍었습니다.

from pandas_datareader import data 

s = data.get_data_yahoo('SBUX', start='2016-01-02',end='2017-12-04')['Adj Close'] 
monthly = s.resample('BM', how=lambda x: x[-1]) 
print(monthly) 

여기 시계열 데이터를 가져 오는 또 다른 방법이 있습니다.

from pandas_datareader import data 
import datetime as dt 
import pandas as pd 
ticker = 'MSFT' 
begdate = '2016-11-11' 
enddate = '2017-12-04' 
data1 = data.DataReader(ticker,'yahoo',dt.datetime(2014,11,11),dt.datetime(2016,11,11)) 
print(data1) 

아래에는 몇 가지 지침과 전체적인 규칙이 나와 있습니다.

우리가 투자를 할 때, 우리는 돈을 다른 자산에 투자하고 다른 기간 동안 수익을 얻습니다. 예를 들어, 단기 재무부 법안에 대한 투자는 3 개월입니다. 우리는 주식에 투자하고 일주일 후에 며칠 동안 퇴장 할 수 있습니다. 이러한 다양한 투자에 대한 수익을 비교할 수 있도록하기 위해 수익을 연간로 계산해야합니다. 따라서 매일, 매주, 매월 또는 분기 별 수익은 연간 수익으로 전환됩니다. 수익을 연간로 환산하는 절차는 다음과 같습니다.

기본 아이디어는 연간 수익을 복리하는 것입니다. 따라서 월별 수익이있는 경우 연중 12 개월이 걸리며 52 주, 4 분기 및 365 일이 있습니다. 우리는 1 년 내 기간 수에 따라 수익을 합성합니다.

이것을 이해하기 위해 몇 가지 예를 들어 봅시다.

예 1 : 분기 별 반환

의 우리가 5 % 분기 별 수익 있다고 가정 해 봅시다

. 1 년에 사방이 있기 때문에, 연간 수익률은 다음과 같습니다

Annual returns = (1+0.05)^4 – 1 = 21.55% 

예 2 : 월간 반환

의 우리가 2 %의 월간 수익률을 가정 해 봅시다

. 년 12 개월이 있기 때문에, 연간 수익률은 다음과 같습니다

Annual returns = (1+0.02)^12 – 1 = 26.8% 

예 3 : 주간

이의 우리가 0.5 % 주간 수익률을 가정 해 봅시다 돌려줍니다. 52주 일년에 있기 때문에, 연간 수익률은 다음과 같습니다

Annual returns = (1+0.005)^52 – 1 = 29.6% 

예 4 : 매일 반환

의 우리가 0.1 % 매일 수익을 있다고 가정 해 봅시다

.

Annual returns = (1+0.001)^365 – 1 = 44.02% 

예 5 : 100 일

우리는 실제로 일의 수에 대한 반환을 가지고 있으며 연간 수익률로 변환 할 수 있습니다 반환 1 년 365 일이 있기 때문에, 연간 반환 될 것입니다. 100 일 동안 6 %의 수익을 올린다고 가정 해 보겠습니다. 연간 수익률은 다음과 같습니다

Annual returns = (1+0.06)^(365/100) – 1 = 23.69% 

연 환산 수익률은 단 하나 개의 제한이 - 그들은 우리가 같은 속도로 돈을 재투자 할 수 있다고 가정합니다. 그러나 이것이 항상 가능하지는 않습니다. 1 분기에 5 %의 수익을 올리면 해당 연도의 다음 3/4 분기 동안 이러한 수익을 재현 할 수 있다는 보장이 없습니다.

관련 문제