小编sun*_*nxd的帖子

熊猫读取csv内存不足

当我写这篇文章时,我尝试使用Pandas操作一个大的CSV文件

df = pd.read_csv(strFileName,sep='\t',delimiter='\t')
Run Code Online (Sandbox Code Playgroud)

它引发了"pandas.parser.CParserError:错误标记数据.C错误:内存不足"wc -l表明有13822117行,我需要聚合在这个csv文件数据框上,有没有办法处理这个,然后拆分将csv分成几个文件并编写代码来合并结果?有关如何做到这一点的任何建议?谢谢

输入是这样的:

columns=[ka,kb_1,kb_2,timeofEvent,timeInterval]
0:'3M' '2345' '2345' '2014-10-5',3000
1:'3M' '2958' '2152' '2015-3-22',5000
2:'GE' '2183' '2183' '2012-12-31',515
3:'3M' '2958' '2958' '2015-3-10',395
4:'GE' '2183' '2285' '2015-4-19',1925
5:'GE' '2598' '2598' '2015-3-17',1915
Run Code Online (Sandbox Code Playgroud)

所需的输出是这样的:

columns=[ka,kb,errorNum,errorRate,totalNum of records]
'3M','2345',0,0%,1
'3M','2958',1,50%,2
'GE','2183',1,50%,2
'GE','2598',0,0%,1
Run Code Online (Sandbox Code Playgroud)

如果数据集很小,则下面的代码可以按照另一个提供的方式使用

df2 = df.groupby(['ka','kb_1'])['isError'].agg({ 'errorNum':  'sum',
                                             'recordNum': 'count' })

df2['errorRate'] = df2['errorNum'] / df2['recordNum']

ka kb_1  recordNum  errorNum  errorRate

3M 2345          1         0        0.0
   2958          2         1        0.5
GE 2183          2         1        0.5
   2598          1         0        0.0
Run Code Online (Sandbox Code Playgroud)

(错误记录的定义:当kb_1!= kb_2时,相应的记录被视为异常记录)

python memory csv

8
推荐指数
1
解决办法
1万
查看次数

在块中读取csv文件时出现内存不足错误

我正在处理一个csv2.5 GB大的文件.2.5 GB的表格如下所示:

columns=[ka,kb_1,kb_2,timeofEvent,timeInterval]
0:'3M' '2345' '2345' '2014-10-5',3000
1:'3M' '2958' '2152' '2015-3-22',5000
2:'GE' '2183' '2183' '2012-12-31',515
3:'3M' '2958' '2958' '2015-3-10',395
4:'GE' '2183' '2285' '2015-4-19',1925
5:'GE' '2598' '2598' '2015-3-17',1915
Run Code Online (Sandbox Code Playgroud)

我想分组kakb_1获得如下结果:

columns=[ka,kb,errorNum,errorRate,totalNum of records]
'3M','2345',0,0%,1
'3M','2958',1,50%,2
'GE','2183',1,50%,2
'GE','2598',0,0%,1
Run Code Online (Sandbox Code Playgroud)

(错误记录的定义:何时kb_1 != kb_2,相应的记录被视为异常记录)

我的电脑是ubuntu 12.04,有16 GB内存free -m返回

             total       used       free     shared    buffers     cached
Mem:        112809      14476      98333          0        128      10823
-/+ buffers/cache:       3524     109285
Swap:    

    0          0          0
Run Code Online (Sandbox Code Playgroud)

我的python文件被调用 bigData.py

import pandas …
Run Code Online (Sandbox Code Playgroud)

python csv mapreduce out-of-memory chunks

7
推荐指数
1
解决办法
6058
查看次数

从Ubuntu中删除anaconda R.

我一直在使用ipython notebook来运行一些R脚本.现在的问题是我的Ubuntu 14.04上有两个R版本.一个是R.3.2.2/home/MYNAME/anaconda2/bin/R,另一个是我需要R工作室的R,现在问题是我只想R.3.3.1用于我的系统,因为我需要完成一些高级任务.

conda uninstall r根据打印输出,运行后,我会使用很多与R相关的软件包,如果我conda uninstall r再次运行,它会说

Fetching package metadata .......
Using Anaconda Cloud api site https://api.anaconda.org
Solving package specifications: ..........
Error: no packages found to remove from environment: /home/MyName/anaconda2
Run Code Online (Sandbox Code Playgroud)

但是当我Which R再次跑步时,仍然是anaconda R,如果我R在终端跑,它仍然是R3.2.2,任何人都知道我怎么能删除这个anaconda R版本?

ubuntu r anaconda conda

5
推荐指数
1
解决办法
3048
查看次数

python profiler在Intellij 15.0.2中不可用

我的intellij版本是15.0.2.但是在运行上下文菜单中,没有关于分析一段代码的选项.谁知道出了什么问题?

python intellij-idea

2
推荐指数
1
解决办法
545
查看次数

标签 统计

python ×3

csv ×2

anaconda ×1

chunks ×1

conda ×1

intellij-idea ×1

mapreduce ×1

memory ×1

out-of-memory ×1

r ×1

ubuntu ×1