首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >读取大型csv文件、python、pandas的随机行

读取大型csv文件、python、pandas的随机行
EN

Stack Overflow用户
提问于 2016-07-07 05:02:21
回答 0查看 3.1K关注 0票数 3

您能帮助我吗?我遇到了一个问题,在Windows (8 Gb RAM)上使用0.18.1 pandas和2.7.10 Python从大型csv文件中读取随机行。

Read a small random sample from a big CSV file into a Python data frame中,我看到了一种方法,然而,对于我的PC来说,它非常消耗内存,也就是说,部分代码:

代码语言:javascript
复制
n = 100
s = 10
skip = sorted(rnd.sample(xrange(1, n), n-s))# skip n-s random rows from *.csv       
data = pd.read_csv(path, usecols = ['Col1', 'Col2'], 
                   dtype  = {'Col1': 'int32', 'Col2':'int32'}, skiprows = skip)

因此,如果我想从文件中随机抽取一些行,不仅考虑到100行,而且考虑到100000行,这就变得很困难,但是从文件中不随机抽取行几乎是可以的:

代码语言:javascript
复制
skiprows = xrange(100000)    
data = pd.read_csv(path, usecols = ['Col1', 'Col2'], 
                   dtype  = {'Col1': 'int32', 'Col2':'int32'}, skiprows = skip, nrows = 10000)

所以问题是,我如何处理从大型csv文件中读取大量随机行的问题,也就是说,由于我无法读取整个csv文件,即使是分块,我也只对随机行感兴趣。谢谢

EN

回答

页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/38233719

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档