Python 大熊猫引号

Python 大熊猫引号,python,pandas,Python,Pandas,我试图在pandas上加载一个大的日志文件,但是这个文件并不统一。有遗产和垃圾。在将数据加载到pandas之前,如果行的第一个字符是引号,是否可以删除它 我知道我可以在将数据添加到PD之前对其进行预清理。然而,这似乎是一种低效的方式。我会用熊猫来做 代码: 数据: 将read_csv与QUOTE_NONE 3一起使用,然后去掉引号: df = pd.read_csv(file, sep='\n', header=None, engine='python', quoting=3) df = df[

我试图在pandas上加载一个大的日志文件,但是这个文件并不统一。有遗产和垃圾。在将数据加载到pandas之前,如果行的第一个字符是引号,是否可以删除它

我知道我可以在将数据添加到PD之前对其进行预清理。然而,这似乎是一种低效的方式。我会用熊猫来做

代码:

数据:

将read_csv与QUOTE_NONE 3一起使用,然后去掉引号:

df = pd.read_csv(file, sep='\n', header=None, engine='python', quoting=3)
df = df[0].str.strip(' \t"').str.split('[,|;: \t]+', 1, expand=True).rename(columns={0: 'email', 1: 'data'})

您的问题是:如何改进str.split操作?在这种情况下,您能否在字符串操作之前展示df[0]的几个典型元素?Stef:最后一个问题是plz。ccode现在可以工作了。唯一的问题是,如果输入文件太大,脚本会抛出一个错误MemoryError:无法为数组分配75.8 MiB。如果我拆分文件并重试,它会工作。那么,是否可以要求DF以块的形式加载数据?是的,您可以指定块大小,详情请参见TEF:您可以检查我的代码吗?请我编辑了我的原始问题。读取完整数据时,这看起来正确吗?Stef:这将解释plz。
"email1@foo.com:datahere2    :  this row will throw an error
email2@foo.com:datahere2
email3@foo.com:datahere2
df = pd.read_csv(file, sep='\n', header=None, engine='python', quoting=3)
df = df[0].str.strip(' \t"').str.split('[,|;: \t]+', 1, expand=True).rename(columns={0: 'email', 1: 'data'})