【Python】 Excel操作:CSVファイルをExcelファイルに出力

■CSVファイルをExcelファイルに出力(Pandasを使用)

pandasを使用し、以下のCSVファイルを読み込み、Excelファイルに出力する。

▼ファイル名
SpeciesData.csv

Species,Weight(g)
A,2
B,5
A,3
A,3
B,9
A,4
A,4
B,6
B,8
A,4
A,4
A,5
B,6
B,8
B,7
A,5
B,7
A,6
B,7
B,7

■サンプルコード

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

# CSVファイルを読み込み、エクセルファイルに貼り付ける関数
# 引数    :CSVファイル名(String型)
# 戻り値   :なし
def ReadCsvToExcel(csv_filename:str) -> None:
    # csvファイル読み込み
    species_data = pd.read_csv(csv_filename)
    # Excelファイルに貼り付け
    species_data.to_excel('Sample.xlsx', index=False)


# メイン処理
if __name__ == '__main__':
    # csvファイル名を変数にセット
    filename = 'SpeciesData.csv'
    # CSVファイルを読み込み、エクセルファイルに貼り付ける関数を呼び出す
    ReadCsvToExcel(filename)

■実行結果

■CSVファイルをExcelファイルに出力(openpyxlを使用)

openpyxlを使用し、以下のCSVファイルを読み込み、Excelファイルに出力する。

▼ファイル名
HightWeight.csv

Hight(cm),Weight(g)
6,2
10,5
5,3
6,3
14,9
6,4
7,4
7,6
7,8

■サンプルコード

# -*- Coding: UTF-8 -*-
import pandas as pd
import openpyxl

# CSVファイルを読み込み、Excelファイルに出力する関数
def OperateExcel(csv_filename:str, excel_filename:str) -> None:

    # 定数宣言
    HIGHTCOL_EXCEL = 1          # Excelファイルの高さ出力列
    WEIGHTCOL_EXCEL = 2         # Excelファイルの重さ出力列
    HIGHTCOL_CSV = 0            # CSVファイルの高さ列
    WEIGHTCOL_CSV = 1           # CSVファイルの重さ列

    # 変数宣言
    RowCounter = 1      # 行カウンタ

    # csvファイルの読み込み
    csv_filedata = pd.read_csv(csv_filename, header=None,index_col=None)

    # 既存のエクセルファイルを読み込む
    WorkBook = openpyxl.load_workbook(filename=excel_filename)

    # シートの設定
    WorkSheet = WorkBook.worksheets[0]

    # データ数分繰り返す
    for i in range(len(csv_filedata)):
        # 高さを出力
        WorkSheet.cell(row=RowCounter, column=HIGHTCOL_EXCEL).value = csv_filedata.iloc[i][HIGHTCOL_CSV]
        # 重さを出力
        WorkSheet.cell(row=RowCounter, column=WEIGHTCOL_EXCEL).value = csv_filedata.iloc[i][WEIGHTCOL_CSV]

        # インクリメント処理
        RowCounter = RowCounter + 1

    # Excelファイルを保存
    WorkBook.save(excel_filename)

    # Excelファイルを終了
    WorkBook.close()


# メイン処理
if __name__ == "__main__":
    # csvファイル名を指定
    csv_filename = 'HightWeight.csv'

    # エクセルファイル名を指定
    excel_filename = 'HightWeight.xlsx'

    # CSVファイルを読み込み、Excelファイルに出力する関数呼び出し
    OperateExcel(csv_filename, excel_filename)

■実行結果

コメント

タイトルとURLをコピーしました