lxinghua

博客园 首页 新随笔 联系 订阅 管理
1. 合并1——文件格式完全相同之全部合并
#导入工具包
import pandas as pd
import os

# 新建空列表,用来存储所有的列表数据
df_list = []

# 循环读取Excel/csv/txt等文件
for i in os.listdir('./'):       # 遍历当前代码所在文件,可提供具体文件夹路径
    if i.split('.')[-1] == 'xlsx':   # 确认是否为excel文件
        df = pd.read_excel(i)
        df_list.append(df)

# 拼接全部的DataFrame
df = pd.concat(df_list, ignore_index=True)

# 写入Excel
df.to_excel('./合并文件.xlsx', index=False)

2.合并2——文件内容有一对一的主键合并

## 导入工具包
import pandas as pd

## 读取 Excel 表
df_1 = pd.read_excel('./产品销售情况数据_前几列.xlsx', sheet_name='sheet1')
df_2 = pd.read_excel('./产品销售情况数据_后几列.xlsx',sheet_name='sheet1')   # sheet_name定义为excel中sheet的name

## 横向拼接两张表
df = pd.merge(df_1,df_2,on='订单编号', sort=True)     # 订单编号为一对一主键,输出按主键排序输出
## 拼接方式inner、outer、left_on、right_on
df = pd.merge(df_1,df_2,how='inner',left_on='编号1',right_on='编号2')    
## 写入 Excel
df.to_excel('./产品销售情况数据_合并.xlsx', index=False)

3. 拆分——文件内容一致,按某一name区分拆分

## 导入工具包
import pandas as pd

## 读取 Excel
df = pd.read_excel('./产品销售情况数据.xlsx')

## 获取产品列表
products_list = df['name1'].drop_duplicates()

## 循环筛选写入 Excel 表
for i in products_list:
    df[df['name1'] == i].to_excel('./产品销售情况数据_'+ i +'.xlsx',index=False)

 

posted on 2023-06-01 19:10  興華  阅读(112)  评论(0编辑  收藏  举报