2016-10-23 10 views
3

私は現在、すべての月末データを持ついくつかのデータフレームを持っています。どのように「月末」に変換するのですか?

私は今、財務データをインポートするには、次のスクリプトを使用:

import csv 
import pandas as pd 
import numpy as np 
import urllib.request 

urllib.request.urlretrieve( 
    'http://chart.finance.yahoo.com/table.csv?s=^GSPC&a=4&b=1&c=2013&d=5&e=1&f=2016&g=m&ignore=.csv', 
    'gspc.csv' 
) 

table = pd.read_csv('gspc.csv') 

    Date Open High Low Close Volume Adj Close 
49 2012-05-01 1,398 1,415 1,292 1,310 4158095900 1,310 
48 2012-06-01 1,310 1,363 1,267 1,362 4103472300 1,362 
47 2012-07-02 1,362 1,392 1,325 1,379 3663113300 1,379 

私が言ったように、私は月末のにこのデータを取得する必要があります。 I.

Date Open High Low Close Volume Adj Close 
49 2012-05-31 1,398 1,415 1,292 1,310 4158095900 1,310 
48 2012-06-30 1,310 1,363 1,267 1,362 4103472300 1,362 
47 2012-07-31 1,362 1,392 1,325 1,379 3663113300 1,379 

私は

table['Date'] = pd.to_datetime(table['Date']) 
table.set_index('Date').resample('M') 
table 

を試みたが、 "M" は "month end frequency" でなければなりませんが、成功しませんでした。

答えて

3

これは、私はそれがあるべきだと思うあなたは

table['Date'] = table['Date'] - pd.tseries.offsets.MonthEnd() 
+2

探しているものでなければなりません: 'table.Date - =この1作品()' – MaxU

+0

pd.offsets.MonthEnd、ありがとう! - =は何のために使われますか? – Rnaldinho

+0

@Rnaldinho、 'a = = b'は' a = a-b'の短縮形です – MaxU

関連する問題