2017-07-30 72 views
-1

我想閱讀下面的文件,並在csv閱讀有問題。 CSV文件在數據標題之前的文件頂部包含大量信息。我已經嘗試過skiprows,內容跳過文件頂部的內容,但不起作用。閱讀CSV試圖跳過行,但有問題刪除前6行

有人可以提供關於如何閱讀此文件的建議嗎?

當前程序

import urllib 
import pandas as pd 
import StringIO 
import datetime 
import sys 
if sys.version_info[0] < 3: 
    from StringIO import StringIO as stio 
else: 
    from io import StringIO as stio 
myfile=[] 
dls "http://www.spdrgoldshares.com/assets/dynamic/GLD/GLD_US_archive_EN.csv" 
f = urllib.urlopen(dls) 
myfile += f.readline() 
TESTDATA=stio(myfile) 
daily_prices = pd.read_csv(TESTDATA, sep=",", header=None, skiprows=13, 
names=["Date", "GLD Close", "LBMA Gold Price", "NAV per GLD in Gold", 
"NAV/share at 10.30 a.m. NYT", "Indicative Price of GLD at 4.15 p.m. NYT",\ 
"Mid point of bid/ask spread at 4.15 p.m. NYT","Premium/Discount of GLD mid 
point v Indicative Value of GLD at 4.15 p.m. NYT",\ 
"Daily Share Volume","Total Net Asset Value Ounces in the Trust as at 4.15 
p.m. NYT", "Total Net Asset Value Tonnes in the Trust as at 4.15 p.m. NYT", 
"Total Net Asset Value in the Trust"]) 

此前表標題上CSV下面的信息被包括在該文件。我嘗試使用跳過行和內容,但都沒有工作。

SPDR金ETF(紐約證券交易所Arca的),

「的‘SPDR’(麥格勞 - 希爾「)商標下從麥格勞 - 希爾集團,公司授權使用」不理財產品提供SPDR「Gold Trust或其關聯公司由McGraw-Hill贊助,認可,出售或推廣。」

「注意:本文檔僅供參考,如有更改,恕不另行通知。未經SPDR Gold Shares [email protected]書面許可,不得以任何方式複製本文檔的任何部分。在任何情況下,均不得將其用於或視爲要約出售或徵求任何要約購買其中所述的證券或其他工具的要約「

」注意:SPDR Gold Shares並不表示該信息是準確的或完整,不應該依賴於此。由於依賴本文檔中包含的數據,SPDR Gold Shares概不負責任何損失,損害,費用或索賠,無論出現何種情況。「

」注意:在LBMA黃金價格不是發佈最近使用的LBMA黃金價格。「

」*注意:自2015年3月20日起,本信託一直使用LBMA黃金價格PM作爲黃金價格來確定本信託黃金的價值。在此之前,本信託使用了倫敦下午定盤,該定盤已於2015年3月19日終止。所有提及LBMA黃金價格的信息僅供參考。 ICE基準管理有限接受的價格或潛在的產品,其價格可參考的準確性不承擔任何責任「

回答

0

您可以使用:

import requests 
from pandas.compat import StringIO 
dls = "http://www.spdrgoldshares.com/assets/dynamic/GLD/GLD_US_archive_EN.csv" 

r = requests.get(dls) 
daily_prices = pd.read_csv(StringIO(r.text), skiprows=6) 

print (daily_prices.head()) 

      Date GLD Close LBMA Gold Price NAV per GLD in Gold \ 
0 18-Nov-2004  44.38   $442.00   100.000000 
1 19-Nov-2004  44.78   $445.60   99.998900 
2 22-Nov-2004  44.75   $447.80   99.995600 
3 23-Nov-2004  45.05   $448.15   99.994500 
4 24-Nov-2004  45.05   $448.60   99.993400 

    NAV/share at 10.30 a.m. NYT Indicative Price of GLD at 4.15 p.m. NYT \ 
0       44.2         44.305 
1     44.55951167         44.694 
2     44.77803823         44.903 
3     44.81255136         44.812 
4     44.85705902         44.952 

    Mid point of bid/ask spread at 4.15 p.m. NYT# \ 
0           $44.37 
1           $44.78 
2           $44.95 
3           $44.74 
4           $45.00 

    Premium/Discount of GLD mid point v Indicative Value of GLD at 4.15 p.m. NYT \ 
0            0.146%        
1            0.192%        
2            0.105%        
3           -0.160%        
4            0.095%        

    Daily Share Volume \ 
0    5992000 
1   11655000 
2   11976800 
3    3139000 
4    6052700 

    Total Net Asset Value Ounces in the Trust as at 4.15 p.m. NYT \ 
0           260000.00    
1           1859994.06    
2           2799952.98    
3           2799952.98    
4           3099933.30    

    Total Net Asset Value Tonnes in the Trust as at 4.15 p.m. NYT \ 
0            8.09    
1            57.85    
2            87.09    
3            87.09    
4            96.42    

    Total Net Asset Value in the Trust 
0      114920000.00 
1      828806907.20 
2      1253785205.50 
3      1254751438.19 
4      1390568824.08 

因爲:

daily_prices = pd.read_csv(dls, skiprows=6) 
print (daily_prices.head()) 

HTTPError: Forbidden