将大文件加载到pandas DataFrame时出现意外行为

时间:2013-03-07 13:31:42

标签: python pandas large-files

我正在尝试将大型(1.5G)文件加载到pandas中,但我遇到了一些非常奇怪的问题。当我加载文件时,一列似乎有一个混合数据类型 - 一些'str'和一些'float'。例如

  
    
      

sessions.visitor_gwp [2]       '185511.545011'

             

sessions.visitor_gwp [8540709]       1349514214092.844

    
  

系列本身的dtype是dtype('O')。文件中列的内容是数字和字母数字数据的混合。所以我希望所有元素都是'str'类型。

这只发生在列的某些特定组合(仅提取unix中的相关列导致工作文件)并且似乎取决于文件中行的顺序!

文件中有14列和10M行。

这是我使用的命令: sessions = pandas.read_csv('bigfile.txt',delimiter ='\ t')

我尝试将注释和quotechar设置为未出现在文件中的字符,例如'〜'。这没有用。

我可以通过明确指定dtype来解决这个问题,但自动类型检测的行为似乎很奇怪,因为我相信(可能是错误地)Series对象应该表示单个类型的元素。

谢谢, 马丁

pandas。版本 ='0.10.1' numpy的。的版本 = '1.7.0'

0 个答案:

没有答案