如何使用Python中的Pandas将CSV转换为Excel?

如何使用Python中的Pandas将CSV转换为Excel?

在本文中,我们将向您展示如何使用Python的pandas模块将CSV文件(逗号分隔值)转换为Excel文件。

假设我们已经拿到了一个名为 ExampleCsvFile.csv 的Excel文件,其中包含一些随机文本。我们将在将给定的Excel文件转换为CSV文件后返回CSV文件。

ExampleCsvFile.csv

球员姓名 年龄 类型 国家 团队 得分 击球
Virat Kohli 33 击球手 印度 Royal Challengers Bangalore 6300 20
Bhuvneshwar Kumar 34 击球手 印度 Sun Risers Hyderabad 333 140
Mahendra Singh Dhoni 39 击球手 印度 Chennai Super Kings 4500 0
Rashid Khan 28 投球手 阿富汗 Gujarat Titans 500 130
Hardik Pandya 29 全才 印度 Gujarat Titans 2400 85
David Warner 34 击球手 澳大利亚 Delhi Capitals 5500 12
Kieron Pollard 35 全才 西印度群岛 Mumbai Indians 3000 67
Rohit Sharma 33 击球手 印度 Mumbai Indians 5456 20
Kane Williamson 33 击球手 新西兰 Sun Risers Hyderabad 3222 5
Kagiso Rabada 29 投球手 南非 Lucknow Capitals 335 111

方法1:转换CSV到Excel而不显示索引值

算法(步骤)

以下是执行所需任务的算法/步骤:

  • 导入 pandas 模块 (Pandas是一个Python开源数据分析和操作包,该模块可以读取、过滤和重排Excel、JSON和CSV格式的小型和大型数据集。)

  • 使用pandas read_csv() 函数(将CSV文件加载为pandas dataframe)创建变量来存储CSV文件的路径。

  • 使用pandas ExcelWriter() 类(要将DataFrame保存到Excel sheet中,请使用pandas ExcelWriter()类。该类通常用于保存多个sheet并将数据追加到现有的Excel sheet中。

Pandas ExcelWriter Highlights:如果安装了xlsxwriter,则默认使用它;否则使用openpyxl。

  • 使用 to_excel() 函数(要将DataFrame导出到Excel文件,请使用to_excel()函数。在写入单个对象到Excel文件时必须指定目标文件名),通过将索引指定为False作为参数来将CSV文件转换为excel文件。这里的index= False 表示不显示索引值。

  • 使用 save() 函数(保存文件)保存结果/输出的Excel文件。

示例

以下程序将CSV文件转换为Excel文件,不显示索引值 –

# 导入pandas模块
import pandas as pd

# 读取CSV文件
cvsDataframe = pd.read_csv('ExampleCsvFile.csv')

# 创建一个输出excel文件
resultExcelFile = pd.ExcelWriter('ResultExcelFile.xlsx')

# 将CSV文件转换为Excel文件
cvsDataframe.to_excel(resultExcelFile, index=False)

# 保存Excel文件
resultExcelFile.save()

输出

执行以上程序后,将创建一个新的Excel文件(resultExcelFile.csv),其中包含来自CSV文件的数据。

在此程序中,我们使用pandas read_csv()函数作为数据框读取包含一些随机虚拟数据的CSV文件,然后我们创建了一个新的Excel文件,并使用to_excel()函数将上述CSV数据框转换为Excel。如果我们将索引传递为false参数,则输出的Excel文件将删除开始处的索引行。如果没有给定索引参数,则会在Excel表格的开头添加一个索引行,然后我们使用save()函数保存所得到的Excel文件以应用更改。

方法2:将CSV转换为带有索引值的Excel

算法(步骤)

要执行所需的任务,需要遵循以下算法/步骤 –

  • 将CSV加载为pandas dataframe。

  • 通过将索引指定为True作为excel()函数的一个参数并显示索引值将CSV文件转换为Excel文件。index=True表示这里显示索引值。

  • 使用 save() 函数(保存文件)保存结果/输出的Excel文件。

使用pandas模块的DataFrame()函数将读取的输出Excel文件转换为数据框对象,并读取输出Excel文件。

  • 显示数据框对象。

示例

以下程序将CSV文件转换为带有索引值的Excel文件 –

#导入pandas模块
import pandas as pd

#读取csv文件
cvsDataframe = pd.read_csv('ExampleCsvFile.csv')

#创建输出的excel文件
resultExcelFile = pd.ExcelWriter('ResultExcelFile.xlsx')

#将csv文件转换为excel文件
cvsDataframe.to_excel(resultExcelFile, index=True)

#保存excel文件
resultExcelFile.save()

#读取并将输出/结果的excel文件转换为数据框对象
excelDataframe=pd.read_excel('ResultExcelFile.xlsx')

#显示数据框对象
print(excelDataframe)

输出

   Unnamed: 0   球员姓名            年龄    类型        国家 \
0   0            Virat Kohli             33       Batsman       India
1   1            Bhuvneshwar Kumar      34       Batsman       India
2   2            Mahendra Singh Dhoni    39       Batsman       India
3   3            Rashid Khan             28       Bowler        Afghanistan
4   4            Hardik Pandya           29       All rounder   India
5   5            David Warner            34       Batsman       Australia
6   6            Kieron Pollard          35       All rounder   West Indies
7   7            Rohit Sharma            33       Batsman        India
8   8            Kane Williamson         33       Batsman       New Zealand
9   9            Kagiso Rabada           29       Bowler        South Africa
        球队                          运动员得分                球员击倒数
0      Royal Challengers Bengaluru   6300                20
1      Sun Risers Hyderabad          333                 140
2      Chennai Super Kings           4500                 0
3      Gujarat Titans                500                 130
4      Gujarat Titans                2400                85
5      Delhi Capitals                5500                12
6      Mumbai Indians                3000                67
7      Mumbai Indians                5456                20
8      Sun Risers Hyderabad          3222                 5
9      Lucknow Capitals              335                 111

当我们将索引作为参数传递为true时,结果excel文件将在开始添加索引行,然后我们使用save()函数保存结果excel文件以应用更改。然后我们将excel文件转换为数据框以查看csv文件中的值是否复制到Excel文件中。

结论

在本教程中,我们学习了如何读取CSV文件,然后将其转换为Excel文件并删除索引或在Excel文件开头添加索引,最后将Excel文件转换为pandas数据框。

Python教程

Java教程

Web教程

数据库教程

图形图像教程

大数据教程

开发工具教程

计算机教程