使用Pandas将列与Python合并

时间:2018-07-27 10:13:38

标签: python pandas dataframe

我使用Python和Sql服务器。我有一个问题,到目前为止我在互联网上找不到。我想合并许多同名的对话,例如“ Buy,amount”与“ Buy,amount”等。

我知道我可以从https://pandas-docs.github.io/pandas-docs-travis/merging.html网站上使用此方法。

我无法使用此方法,因为我得到很多行或其他方法来手动写入值

In [1]: df1 = pd.DataFrame({'A': ['A0', 'A1', 'A2', 'A3'],
   ...:                     'B': ['B0', 'B1', 'B2', 'B3'],
   ...:                     'C': ['C0', 'C1', 'C2', 'C3'],
   ...:                     'D': ['D0', 'D1', 'D2', 'D3']},
   ...:                     index=[0, 1, 2, 3])
   ...: 

In [2]: df2 = pd.DataFrame({'A': ['A4', 'A5', 'A6', 'A7'],
   ...:                     'B': ['B4', 'B5', 'B6', 'B7'],
   ...:                     'C': ['C4', 'C5', 'C6', 'C7'],
   ...:                     'D': ['D4', 'D5', 'D6', 'D7']},
   ...:                      index=[4, 5, 6, 7])
   ...: 

In [3]: df3 = pd.DataFrame({'A': ['A8', 'A9', 'A10', 'A11'],
   ...:                     'B': ['B8', 'B9', 'B10', 'B11'],
   ...:                     'C': ['C8', 'C9', 'C10', 'C11'],
   ...:                     'D': ['D8', 'D9', 'D10', 'D11']},
   ...:                     index=[8, 9, 10, 11])
   ...: 

In [4]: frames = [df1, df2, df3]

In [5]: result = pd.concat(frames)

这是我的表:df1表示数据帧(每列中有500行)

       df1                                         df16

(rows)"Buy,amount" "Sell,amount" "Buy, amount"..."Sell,amount "    
0       133          44            321             323
1       122          100           656             404
2       1            3             65              121
3       2            66            444             989
.       .            .             .               .
.       .            .             .               .  
.       .            .             .               .
.       .            .             .               .
.       .            .             .               .
500     22           44            1021            64

这就是我想要的:

 (rows)   "Buy,amount"   "Sell,amount"  
    0         133           44                 
    1         122           100           
    2         1             3                         
    3         2             66                      
    .         .             .                            
    .         .             .                             
    .         .             .                            
    .         .             .                            
    .         .             .                            
    10000     1021          64 

这是我想建立的代码:

cursor = get_sql_conn().cursor()
    localFile = 'C:\\Users\\dersimw\\Source\Repos\\nordpoolAnalyse\\data\\2011-3.xlsx'
    excelFile = pd.ExcelFile(localFile)


    for sheets in a:
        df = excelFile.parse(sheets, skiprows=35)
        df.dropna(axis=1, how='all', inplace = True)
        df.fillna(0, inplace = True)

欣赏所有答案!

0 个答案:

没有答案