1 
                    
                    wh0syourda66y      2016-10-12 11:14:20 +08:00 
                    
                    docker pull 个 spark 镜像下来,用 pyspark 来计算。速度杠杠滴 
                 | 
            
     2 
                    
                    menc      2016-10-12 11:16:28 +08:00 
                    
                    用原生 dict 来做 
                 | 
            
     3 
                    
                    taxidriver      2016-10-12 11:23:48 +08:00 
                    
                    又是一个用 Python 做量化的,看到 2900+就知道了 
                建议合并后保存成 HDF5 文件,下次需要直接加载到内存,能省很多功夫  | 
            
     4 
                    
                    imn1      2016-10-12 11:30:22 +08:00 
                    
                    1.先用 profile 查一下哪一步慢, list 转 df 还是合并 df 
                2.concat 或者 append 要避免空 df ,就是直接 concat 到一个有数据的 df ,如果合并到一个空 df 会引起严重性能问题 3.多步骤处理大量数据,要及时 del 无用数据  | 
            
     5 
                    
                    kingmo888   OP  | 
            
     6 
                    
                    kingmo888   OP @wh0syourda66y pyspark ?? 
                 | 
            
     10 
                    
                    qleroooo      2016-10-12 11:57:58 +08:00 
                    
                    为什么要存到 list 
                 | 
            
     12 
                    
                    zjuhwc      2016-10-12 13:14:06 +08:00 
                    
                    感觉是解析到 list 和 list 转 df 这些步骤话的时间长吧,刚试了下生成 3000 个 100*2 的 df 用 concat 合并, 230ms 就够了。 
                In [1]: import pandas as pd In [2]: import numpy as np In [3]: l = [pd.DataFrame(np.random.randn(100, 2)) for _ in xrange(3000)] In [4]: timeit pd.concat(l, axis=1) 1 loop, best of 3: 230 ms per loop  | 
            
     15 
                    
                    taxidriver      2016-10-12 15:41:11 +08:00 
                    
                    @kingmo888 keys 的索引也是 O(1) 
                 | 
            
     16 
                    
                    laibluejay      2016-10-13 16:14:05 +08:00 
                    
                    大 df 和多个 df 的合并和输出,不如直接用读写文件的方式,快得很...... 
                df merge 确实效率不高  |