代码之家  ›  专栏  ›  技术社区  ›  N.Omugs

Python:获取excel中的特定行并保存到新工作表

  •  0
  • N.Omugs  · 技术社区  · 6 年前

    我有一个excel示例,其中包含示例数据: enter image description here

    我有这个代码,但它只是创建一个新的工作表:

    writer = ExcelWriter('Employee Timesheet.xlsx')
    df.insert(loc=0, column='Number', value=range(1,max_row+1-4))
    
    
    for i in range(5,max_row+1):
      for j in range(2,3):
        cell_obj=ws.cell(row=i,column=j)
        cell_obj1=ws.cell(row=i+1,column=j)
      if cell_obj.value != cell_obj1.value:
        #sample only on creating a new sheet
        counter = 5
        for count in range(1,counter):
            sheet_name = 'Sheet%s' % count
            df.to_excel(writer, sheet_name=sheet_name, index=False)
    
    writer.save()
    

    1 回复  |  直到 6 年前
        1
  •  0
  •   Ammar Sabir Cheema    6 年前

    #!/usr/bin/python
    from numpy import nan
    import pandas as pd
    
    my_df=pd.DataFrame({'ID':['Sample1', 'Sample1', 'Sample1', 'Sample1', 'Sample2', 'Sample2', 'Sample2', 'Sample2', 'Sample3', 'Sample3'],
    'Purchase':[4, 5, 6, 7, 8, 9, 10, 11, 12, 13],'item':['Item1', 'Item2', nan, 'Item4', 'Item5', 'Item6', 'Item7', nan, nan, nan],})
    my_df
          ID        Purchase   item
    0     Sample1         4  Item1
    1     Sample1         5  Item2
    2     Sample1         6    NaN
    3     Sample1         7  Item4
    4     Sample2         8  Item5
    5     Sample2         9  Item6
    6     Sample2        10  Item7
    7     Sample2        11    NaN
    8     Sample3        12    NaN
    9     Sample3        13    NaN
    

    第一列中有重复值的示例可以提取到字典中,然后提取到单独的csv文件中,这些文件也可以与excel一起使用:

    dict_of_dataframe = {k: v for k, v in my_df.groupby('ID')} # Group based on ID, 
    for key,value in dict_of_companies.items():
        with open(key, 'w+') as f:
            f.write(str(value))
    
    f.close()
    

    这将根据第一列中重复的值生成csv文件。

    推荐文章