小编Rei*_*e45的帖子

Python:处理大文件的最快方法

我有多个3GB制表符分隔文件.每个文件中有2000万行.所有行必须独立处理,任何两行之间没有关系.我的问题是,什么会更快A.使用逐行阅读

with open() as infile:
    for line in infile:
Run Code Online (Sandbox Code Playgroud)

或者B.以块的形式将文件读入内存并进行处理,一次说250 MB?

处理不是很复杂,我只是将column1中的值抓到List1,将column2抓到List2等.可能需要一起添加一些列值.

我在具有30GB内存的Linux机器上使用python 2.7.ASCII文本.

有什么方法可以加速并行?现在我正在使用前一种方法,而且过程非常缓慢.使用任何CSVReader模块都可以提供帮助吗?我不必在python中使用它,任何其他语言或数据库使用的想法都是受欢迎的.谢谢.

python file filereader python-2.7

28
推荐指数
2
解决办法
4万
查看次数

在Python Pandas中将行转换为列

我有以下Python pandas数据帧:

     fruits | numFruits
---------------------
0  | apples |   10
1  | grapes |   20
2  |  figs  |   15
Run Code Online (Sandbox Code Playgroud)

我想要:

                 apples | grapes | figs
-----------------------------------------
Market 1 Order |    10  |   20   |  15
Run Code Online (Sandbox Code Playgroud)

我查看了pivot(),pivot_table(),Transpose和unstack(),但似乎没有人给我这个.熊猫新手,所以所有的帮助赞赏.

python transpose dataframe pandas

25
推荐指数
2
解决办法
5万
查看次数

将模态内容打印为完整的A4页面

我正在尝试两件事:

  1. 在模式上显示内容,就像在A4页面上显示的内容一样
  2. windows.print()通过主流浏览器在A4页面上的模态

以下是我的CSS:

.page {
    width: 210mm;
    min-height: 297mm;
    padding: 20mm;
    margin: 10mm auto;
    border: 1px #D3D3D3 solid;
    border-radius: 5px;
    background: white;
    box-shadow: 0 0 5px rgba(0, 0, 0, 0.1);
}
.subpage {
    padding: 1cm;
    border: 5px black solid;
    height: 257mm;
    outline: 2cm #FFEAEA solid;
}

@page {
    size: A4;
    margin: 0;
}

@media print {
    html, body {
        margin:0 !important;
        padding:0 !important;
        height:100% !important;
        visibility: hidden;
    }

    .page .subpage .col-md-12,.col-lg-12{
        float:left;
        width:100%;
    }
    .page .subpage {
        padding: 1cm; …
Run Code Online (Sandbox Code Playgroud)

html javascript css printing twitter-bootstrap

17
推荐指数
1
解决办法
8121
查看次数

C#Parallel.Foreach等效于Python

我有96个txt文件需要处理.现在我正在使用for循环并一次执行一个,这个过程非常慢.生成的96个文件,不需要合并.有没有办法使它们并行运行,ala Parallel.foreach在C#中?当前代码:

for src_name in glob.glob(source_dir+'/*.txt'):
   outfile = open (...)
   with open(...) as infile:
      for line in infile:
         --PROCESS--
   for --condition--:
      outfile.write(...)
   infile.close()
   outfile.close()
Run Code Online (Sandbox Code Playgroud)

希望此进程并行运行source_dir中的所有文件.

c# python parallel-processing parallel.foreach

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

使用regexp_split_to_table时出错(Amazon Redshift)

我有同样的问题:
在Postgresql中拆分逗号分隔的字段并在所有结果表上执行UNION ALL
只是我的'fruits'列由'|'分隔.当我尝试:

SELECT 
    yourTable.ID, 
    regexp_split_to_table(yourTable.fruits, E'|') AS split_fruits
FROM yourTable
Run Code Online (Sandbox Code Playgroud)

我得到以下内容:

ERROR: type "e" does not exist
Run Code Online (Sandbox Code Playgroud)

Q1.怎么E办?我看到一些E不使用的例子.官方文档没有在他们的"快速棕色狐狸......"中解释它.

Q2.我该如何使用'|' 作为我查询的分隔符?

编辑:我正在使用PostgreSQL 8.0.2.unfst()和regexp_split_to_table()都不受支持.

postgresql amazon-redshift set-returning-functions

6
推荐指数
1
解决办法
3068
查看次数

Sudo没有找到新的python版本

我的linux盒子里有python2.6,但是安装了python3.4来使用新模块.我使用sudo访问安装它.新版本安装在/usr/local/bin.没有root访问权限,我可以使用新的python3.4,只需在命令行中使用python3.4或在.py文件中使用shebang#!/usr/local/bin/python3

现在我正在尝试安装一个模块,我需要sudo访问.当我是根,我跑python3.4,它说command not found.我跑了whereis python,找到了python2.6的路径/usr/bin,但是whereis python3.4根本给出了not found in /usr/bin,这是正确的,因为它在/usr/local/bin.再次,如果我从root退出,我使用python3.4没有问题

这似乎是一个$PATH问题(不确定),在为新的python3.4安装模块时,有人可以帮助我做错了吗?我能够安装该模块,但它安装在旧的python2.6站点包中.

python linux

4
推荐指数
1
解决办法
5588
查看次数

SQL:添加行值并显示在新列中

我有通过tasteRating订购的表t1

    Fruit | tasteRating|Cost 
    -----------------------
    Apple |  99       | 1  
    Banana|  87       | 2  
    Cherry|  63       | 5 
Run Code Online (Sandbox Code Playgroud)

我想要t2

    Fruit | Cost | Total Cost
    -------------------------
    Apple |   1  | 1
    Banana|   2  | 3
    Cherry|   5  | 8
Run Code Online (Sandbox Code Playgroud)

有没有办法根据Cost的值在SQL中动态生成总成本?在Redshift上执行此操作.谢谢

sql amazon-redshift

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