您的位置: 网站首页> Pandas教程> 当前文章

pandas指定一列来拆分excel为多个excel

老董-我爱我家房产SEO2020-06-04181围观,112赞

  分割excel除了固定行数分割之外,也可以按照某个列表分割。本文实现pandas按照某一列的数据类别进行分割。

  目前有个一个excel文件,第一行是表头分别为城市、位置、关键词三个字段,要求按照城市来进行拆分,每个城市单独为一个excel。思路如下:

  1、读取excel,获取城市那一列并去重得到城市类别

  2、循环类别,每个类别写入excel(需要用到布尔索引)

  代码很简单,如下:

# -*- coding: utf-8 -*-
import pandas as pd

df = pd.read_excel('kwd.xlsx')
citys_obj = df['城市'].drop_duplicates()
citys = list(citys_obj) # 获取city分类

for city in citys:
    res = df['城市'] == city # 布尔判断
    df[res].to_excel('{0}.xlsx'.format(city),index=False)

  其实还有更简单的方法,利用groupby实现,如果不理解分组的原理,请查看文章groupby分组应用大全

# -*- coding:UTF-8 -*-
import pandas as pd   

df = pd.read_excel('kwd.xlsx')
gb = df.groupby(['城市'])
for city,df_son in gb:
	df_son.to_excel(f'{city}.xlsx',index=False)

很赞哦!

python编程网提示:转载请注明来源www.python66.com。
有宝贵意见可添加站长微信(底部),获取技术资料请到公众号(底部)。同行交流请加群 python学习会

文章评论

    pandas指定一列来拆分excel为多个excel文章写得不错,值得赞赏

站点信息

  • 网站程序:Laravel
  • 客服微信:a772483200