2017-06-12 90 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查询的订阅源 –