首页 > 编程语言 > Python操作Excel把数据分给sheet
2020
09-29

Python操作Excel把数据分给sheet

需求:根据country列的不同值,将内容分到不同sheet

方法一:

读取原Excel,根据country列将不同的内容放到不同的sheet,并根据国家名称命名,将结果放到新的输出文件中。

#!/usr/bin/env python3
#读取Excel文件
import pandas as pd
input_file = "F://python入门//数据2//appname_test.xlsx"
output_file = "F://python入门//数据2//output.xlsx"
data_frame = pd.read_excel(input_file,sheet_name='sum1',index_col = None)
data_frame_country = data_frame['country']
category_countory = set(data_frame_country)
writer = pd.ExcelWriter(output_file)
for country in list(category_countory):
  df = data_frame[data_frame['country'] == country]
  df.to_excel(writer, sheet_name= country ,index=False)
writer.save()

结果,生成了output.xlsx,将appname_test.xlsx中的汇总数据根据不同国家分到了不同sheet:

方法二:

读取原Excel,根据country列将不同的内容放到不同的CSV文件,并根据国家名称命名。

#!/usr/bin/env python3
#读取Excel文件
import pandas as pd
input_file = "F://python入门//数据2//appname_test.xlsx"
data_frame = pd.read_excel(input_file,sheet_name='sum1',index_col = None)
data_frame_country = data_frame['country']
category_countory = set(data_frame_country)
for country in list(category_countory):
  df = data_frame[data_frame['country'] == country]
  df.to_csv("F:/python入门/数据2/table_{}.csv".format(country), encoding="gbk", index=False)

结果生成四个csv文件:

以table_繁体中文为例:

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持自学编程网。

编程技巧