我正在学习如何通过pandas将大型csv文件加载到python中。我正在使用anaconda和Python3与一台64 GB内存的pc。
贷款组合是一个很大的例子。csv数据集由2509列和100000行组成,约为1.4 GBs。
我可以毫无错误地运行以下代码:
MyList=[]
Chunk_Size = 10000
for chunk in pd.read_csv('Loan_Portfolio_Example_Large.csv', chunksize=Chunk_Size):
MyList.append(chunk)
然而,当我使用贷款组合时,例如,大型。csv文件创建一个更大的文件,即Loan\u Portfolio\u Example\u Large。csv时,以下代码生成错误。
请注意,我所做的创建较大的文件是我从Loan_Portfolio_Example_L复制100,000行arge.csv并粘贴它们4次(即,粘贴在Excel中的较低行并保存为csv),以创建由500,000个文件组成的文件行和2509列(此文件约为4.2 GB)。
下面的代码创建了一个解析器错误,我不确定为什么因为数据只变得更大,我没有以任何其他方式改变csv文件的结构,我应该有足够的内存,我增加了块大小,这不应该导致任何问题...
有什么想法吗?我想知道csv是否在保存时被损坏了(因为它太大了)
MyList=[]
Chunk_Size = 100000
for chunk in pd.read_csv('Loan_Portfolio_Example_Larger.csv', chunksize=Chunk_Size):
MyList.append(chunk)
错误输出:
--------------------------------------------------------------------------- ParserError Traceback(最近的调用最后)在2 MyList=[] 3Chunk_Size=100000----
C:\Program Data\Anaconda3\lib\site-包\熊猫\io\parsers.py在下一个(自我)1126 def下一个(自我): 1127尝试:-
C:\ProgramData\Anaconda3\lib\site packages\pandas\io\parsers。获取块中的py(self,size)1186提升停止迭代
1187 size=min(size,self.nrows-self.\currow)-
C:\ProgramData\Anaconda3\lib\site packages\pandas\io\parsers。py in read(self,nrows)1152 def read(self,nrows=None):1153
nrows=\u validate\u integer(“nrows”,nrows)-
C:\Program Data\Anaconda3\lib\site-包\熊猫\io\parsers.py在读取(自我,nrows)2057 def读取(自我,nrows=无): 2058
try:-
熊猫库\解析器。大熊猫中的pyx_图书馆。解析器。文本阅读器。读()
熊猫库\解析器。大熊猫中的pyx_图书馆。解析器。文本阅读器_读低内存()
熊猫库\解析器。大熊猫中的pyx_图书馆。解析器。文本阅读器_读_行()
熊猫库\解析器。大熊猫中的pyx_图书馆。解析器。文本阅读器_标记化_行()
熊猫库\解析器。大熊猫中的pyx_图书馆。解析器。raise_解析器_错误()
ParserError:标记数据时出错。C错误:第145134行中预期有2509个字段,saw 3802
似乎记录145134在数据中有一些分隔符,并使其看起来有更多的列。尝试将read_csv与下面的参数一起使用,这样它会让您知道有问题的记录,但不会停止该过程。
pd.read_csv('Loan_Portfolio_Example_Large.csv',
chunksize=Chunk_Size,
error_bad_lines=False,
warn_bad_lines=True)
我正在尝试加载csv文件 导入熊猫作为pd dfc=pd。读取_csv('data/Vehicles0515.csv',sep=',') 但是我有以下错误 ParserError:标记数据时出错。C错误:第3004427行预期有22个字段,SAW23 我已阅读包含错误\u错误\u行=错误 但这并不能解决问题 谢谢
我试图加载一个csv文件内基于熊猫的数据帧。我使用了以下导入。 没有找到文件是抛出错误,回溯如下: ()中的FileNotFoundError回溯(最近一次调用)---- c:\users\saish\appdata\local\programs\python\python35-32\lib\site packages\pandas\io\parsers。语法分析器中的py\u f(文件路径或缓冲
我有一个包含日期列的csv文件,该文件中的日期格式为“dd.mm.yy”,当熊猫解析日期时,如果小于或等于12,它将日期理解为一个月,因此05.01.05变成01/05/2005。 我怎样才能解决这个问题 问候
问题内容: 这个问题已经在这里有了答案 : Python中的Windows路径 (5个答案) 4年前关闭。 追溯(最近一次通话): 产品中的文件“”,第1行= pd.read_csv(’C:\ amazon_baby.csv’) 在parser_f中的第562行的文件“ C:\ Users \ kvsn \ Anaconda3 \ lib \ site-packages \ pandas \ io
问题内容: 我正在使用CSV文件,其中几个列具有一个简单的json对象(几个键值对),而其他列则是正常的。这是一个例子: 使用完后,解析该列并将其拆分为其他列的最有效方法是什么? 大约一个小时后,我唯一能想到的是: 看来我做错了,考虑到我需要定期在三列上进行,这需要大量工作。 所需的输出是下面的数据框对象。添加了以下代码行以我((脚的)方式到达那里: 问题答案: 有一种稍微简单的方法,但是最终您必
我运行了以下脚本(https://github.com/FXCMAPI/FXCMTickData/blob/master/TickData34.py)并在末尾添加以下行以下载文件: 然后,我尝试使用pandas打开文件,如下所示: 然而,我得到的是: 为什么数据框是空的? 如果我在TextEdit上打开文件,前几行实际上如下所示: