2017-02-20 189 views
2

字符串转换回列表我有一些数据,其中一列是这样的txt文件:如何使用熊猫

['BONGO', 'TOZZO', 'FALLO', 'PINCO'] 

为了加载我用熊猫文件功能to_csv

一旦数据框被加载,它看起来像内容是好的,但后来我意识到数据框内的项目不是一个项目列表,而是一个字符串,其元素是列表中的字符!

df['column']返回这样

"['BONGO', 'TOZZO', 'FALLO', 'PINCO']" 

,而不是像这样的列表的字符串:

['BONGO', 'TOZZO', 'FALLO', 'PINCO'] 

因此,如果我型df['column'][0]我得到的'['代替BONGO

我应该怎么办为了将字符串转换回其原始列表格式?有没有输入to_csv函数,我应该使用?

+1

'的eval(DF [ '列'])'? – Zero

+1

@JohnGalt没有! – DyZ

+0

'eval'是特别危险的,当你从DataFrame中读取时,可能由其他一些源创建@JohnGalt – ZdaR

回答

4

您可以使用ast.literal_eval为:

>>> import ast 
>>> a = "['BONGO', 'TOZZO', 'FALLO', 'PINCO']" 
>>> print ast.literal_eval(a) 
>>> ['BONGO', 'TOZZO', 'FALLO', 'PINCO']