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

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

在这篇文章中,我们将介绍如何使用Python中的pandas模块将CSV文件(逗号分隔值)转换为Excel文件。

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

ExampleCsvFile.csv

球员名字 年龄 类型 国家 球队 得分 门将
维拉特·科利 33 打击手 印度 皇家挑战者班加罗尔 6300 20
布胡文什瓦尔·库马尔 34 打击手 印度 太阳升海得拉巴 333 140
马亨德拉·辛格·多尼 39 打击手 印度 钦奈超级国王 4500 0
拉西德·汗 28 玻浪 阿富汗 古吉拉特泰坦队 500 130
哈迪克·潘迪亚 29 全能选手 印度 古吉拉特泰坦队 2400 85
大卫·华纳 34 击球手 澳大利亚 德里首都队 5500 12
基伦·波拉德 35 全能选手 西印度群岛 孟买印度人队 3000 67
罗希特·夏尔马 33 球员 印度 孟买印度人 5456 20
凯恩·威廉姆森 33 球员 新西兰 太阳升海得拉巴 3222 5
卡吉索·拉巴达 29 投球手 南非 幸运城队 335 111

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

步骤

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

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

  • 创建一个变量来存储CSV文件的路径,使用pandas read_csv() 函数读取文件后(将CSV文件加载为pandas数据帧)。

  • 使用pandas ExcelWriter() 类创建一个输出的Excel文件(要将DataFrame保存到Excel表格中,请使用pandas的ExcelWriter()类。该类通常用于保存多个工作表并将数据追加到现有的Excel表格中。

Pandas ExcelWriter的要点:如果已安装xlsxwriter,则默认使用该库;否则使用openpyxl库)。

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

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

示例

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

# importing pandas module
import pandas as pd

# reading the csv file
cvsDataframe = pd.read_csv('ExampleCsvFile.csv')

# creating an output excel file
resultExcelFile = pd.ExcelWriter('ResultExcelFile.xlsx')

# converting the csv file to an excel file
cvsDataframe.to_excel(resultExcelFile, index=False)

# saving the excel file
resultExcelFile.save()

输出

在执行上述程序后,将创建一个名为resultExcelFile.csv的新的Excel文件,并将CSV文件中的数据写入其中。

在这个程序中,我们使用pandas的read_csv()函数将一个包含一些随机虚拟数据的CSV文件读取为一个数据帧,然后我们创建一个新的excel文件,并使用to_excel()函数将上述CSV数据帧转换为excel格式。如果我们将索引参数设置为false,输出的excel文件将去掉开头的索引行。如果没有指定索引参数,它会在excel表的开头添加一个索引行,然后我们使用save()函数保存结果excel文件以应用更改。

方法2:将CSV转换为显示索引值的Excel文件

步骤

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

  • 将CSV文件加载为pandas数据帧。
  • 通过将index参数设置为True作为excel()函数的参数,将CSV文件转换为excel文件,并显示索引值。index=True表示这里显示索引值。
  • 使用save()函数(保存文件)保存结果/输出的excel文件。
  • 使用read_excel()函数读取输出的Excel文件(将Excel文件加载为pandas数据帧),并使用pandas模块的DataFrame()函数将其转换为数据帧对象。
  • 显示数据帧对象。

示例

以下程序将CSV文件转换为显示索引值的excel文件−

# importing pandas module
import pandas as pd

# reading the csv file
cvsDataframe = pd.read_csv('ExampleCsvFile.csv')

# creating an output excel file
resultExcelFile = pd.ExcelWriter('ResultExcelFile.xlsx')

# converting the csv file to an excel file
cvsDataframe.to_excel(resultExcelFile, index=True)

# saving the excel file
resultExcelFile.save()

# Reading and Converting the output/result excel file into a dataframe object
excelDataframe=pd.read_excel('ResultExcelFile.xlsx')

# Displaying the dataframe object
print(excelDataframe)

输出

Unnamed: 0   Player Name              Age       Type        Country \
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
        Team                         Runs               Wickets
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

在这里,我们将index作为一个true的参数传递,结果Excel文件在开头添加了索引行,然后我们使用save()函数保存结果的Excel文件以应用更改。然后,我们将Excel文件转换为数据框以查看CSV文件中的值是否被复制到Excel文件中。

结论

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

Camera课程

Python教程

Java教程

Web教程

数据库教程

图形图像教程

办公软件教程

Linux教程

计算机教程

大数据教程

开发工具教程