2017-06-12 125 views
1

我有一個CSV數據流/對象調用jobresults轉換CSV數據流進入熊貓數據框(Python 2.7版)

"number","person1","person2","type" 
1234,"Michael Scott","Pam Beasley",false 
2345,"Michael Scott","Jim Halpert",true 
3456,"Jim Halpert","Dwight Schrute",false 

如何轉換這個對象(它不是寫出來的檔案)熊貓DataFrame?

我想:

df = pd.read_csv(jobresults) 

...無濟於事。我相信read_csv需要從操作系統中提取實際的文件。

任何見解將不勝感激!

回答

2

使用io.StringIO

由於stated here

對於Python 3使用

from io import StringIO 

df = pd.read_csv(StringIO(jobresults)) 

對於Python 2使用

from StringIO import StringIO 

df = pd.read_csv(StringIO(jobresults)) 

考慮到你[R對象是splunklib.binding.ResponseReader您可能需要使用read()方法...

試試這個:

from StringIO import StringIO 

df = pd.read_csv(StringIO(jobresults.read())) 
+0

我得到這個錯誤: '文件 「」 ,第69行,在 df = pd.read_csv(StringIO(jobresults)) TypeError:initial_value必須是unicode或None,而不是ResponseReader'我正在使用Python 2.7。 –

+0

'type(jobresults)'是什麼? – piRSquared

+0

'splunklib.binding.ResponseReader' - 它是來自Splunk查詢的訂閱源 –