2017-08-04 66 views
0

我做urlread,我得到了以下數據:加載通過StringIO的二進制數據轉換成數據幀

text 
b'Date,Open,High,Low,Close,Adj Close,Volume\n2011-10-04,4.936250,5.262500,4.912500,5.262500,5.262500,162400\n2011-10-05,5.441250,5.705000,5.431250,5.673750,5.673750,71200 .... 

type(text) 
<class 'bytes'> 

我想將其存儲在數據幀,使得獨立列從標題名稱作爲創建:

Date,Open,High,Low,Close,Adj Close,Volume 
2011-10-04,4.936250,5.262500,4.912500,5.262500,5.262500,162400 
2011-10-05,5.441250,5.705000,5.431250,5.673750,5.673750,71200 

我想解析日期列也作爲日期時間。

我嘗試以下:

import pandas as pd 
import io 
data = pd.read_fwf(io.StringIO(text.decode("utf-8"))) 

但其中每一行顯示爲一個字符串

+1

'pd.read_csv(io.StringIO(text.decode( 「UTF-8」)))'? –

+0

謝謝..不知道這是直截了當 – Zanam

+0

沒問題。爲後人發佈了一個答案。隨意標記接受。 –

回答

1

pd.read_fwf讀取固定有格式化的線的上方給出了代替形狀2x7形狀2x1的數據幀。如果您的列大小規則,這是有意義的。

但是,對於您的情況,您的數據似乎是csv剪報。您應該使用pd.read_csv代替:

pd.read_csv(io.StringIO(text.decode("utf-8")))