■ExcelファイルをCSVファイルに出力
以下のExcelファイルを読み込み、CSVファイルに出力する
・ファイル名
Sample.xlsx
・サンプルコード
# -*- Coding: UTF-8 -*-
import openpyxl
import pandas as pd
# csv出力関数
def ExcelToCsv():
# 定数
SPECIES_COL = 1
WEIGHT_COL = 2
# 変数
data_row = 1
data_list = []
species_data = ''
weight_data = ''
# 既存のエクセルファイルを読み込む
WorkBook = openpyxl.load_workbook(filename='Sample.xlsx')
# シートの設定
WorkSheet = WorkBook.worksheets[0]
# データの数だけ繰り返し
while not WorkSheet.cell(row=data_row, column=SPECIES_COL).value is None:
# 種別の値を変数に格納
species_data = WorkSheet.cell(row=data_row, column=SPECIES_COL).value
# 重さの値を変数に格納
weight_data = WorkSheet.cell(row=data_row, column=WEIGHT_COL).value
# 一時配列にデータを格納
tmp_data_list = [species_data, weight_data]
# 配列に追加
data_list.append(tmp_data_list)
# インクリメント処理
data_row = data_row + 1
# csv出力
result_data = pd.DataFrame(data_list)
result_data.to_csv('result_data.csv', index=False, header=False)
# Excelファイルを保存
WorkBook.save('Sample.xlsx')
# Excelファイルを終了
WorkBook.close()
# 出力したcsvファイルを表示する関数
def ReadCsvFile():
df = pd.read_csv('result_data.csv')
print(df)
# メイン処理
if __name__ == "__main__":
ExcelToCsv()
ReadCsvFile()
・実行結果
Species Weight(g)
0 A 2
1 B 5
2 A 3
3 A 3
4 B 9
5 A 4
6 A 4
7 B 6
8 B 8
9 A 4
10 A 4
11 A 5
12 B 6
13 B 8
14 B 7
15 A 5
16 B 7
17 A 6
18 B 7
19 B 7
コメント