目次
1.xlsxからcsvにデータを書き込む
1.パンダを使用する
XLSX (Excel) ファイルから CSV ファイルにデータを書き込むには、Python のpandas
ライブラリを使用できます。
以下にプログラム例を示します。
import pandas as pd
# 从XLSX文件读取数据
df = pd.read_excel('input.xlsx')
# 将数据写入CSV文件
df.to_csv('output.csv', index=False)
上記の例では、まず
pd.read_excel()
メソッドを使用して XLSX ファイルからデータを読み取り、それを DataFrame オブジェクトとして保存しますdf
。次に、df.to_csv()
このメソッドを使用してデータを CSV ファイルに書き込みます。これは、index=False
インデックス列が含まれていないことを示します。
pandas
この例を実行する前に、まずライブラリをインストールする必要があることに注意してください。次のコマンドを使用してインストールできます。
pip install pandas
上記の方法でXLSXファイルのデータをCSVファイルに書き込み、CSV形式のデータを他のアプリケーションや環境で利用することができます。
2.パンダを使用しないでください
pandas
ライブラリを 使用していない場合は、openpyxl
およびcsv
モジュールを使用して、XLSX ファイルから CSV ファイルにデータを書き込むことができます。
以下にプログラム例を示します。
import openpyxl
import csv
# 打开XLSX文件
wb = openpyxl.load_workbook('input.xlsx')
# 选择第一个工作表
sheet = wb.active
# 打开CSV文件
with open('output.csv', 'w', newline='') as csvfile:
writer = csv.writer(csvfile)
# 遍历工作表的行
for row in sheet.iter_rows(values_only=True):
writer.writerow(row)
# 关闭XLSX文件
wb.close()
- 上記のコードでは、
for row in sheet.iter_rows(values_only=True)
ワークシート内のデータの各行を走査するためにループ ステートメントが使用されています。sheet.iter_rows()
はいopenpyxl
ワークシートの行を反復処理する、ライブラリ内のワークシート オブジェクトのメソッド。を設定するとvalues_only=True
、セル オブジェクトを含むタプルの代わりに各セルの値を直接取得できます。- 各ループでは、
row
変数は現在の行のデータを表します。コードの次の行では、writer.writerow(row)
現在の行のデータを CSV ファイルに書き込みます。- を使用すると
sheet.iter_rows(values_only=True)
、複雑なインデックスやセルの値を取得するメソッドを使用せずに、ワークシートの各行を簡単に反復処理し、その中のデータにアクセスできます。
2.csvからxlsxにデータを書き込む
1.パンダを使用する
CSV ファイルから XLSX (Excel) ファイルにデータを書き込むには、Python の
pandas
ライブラリとopenpyxl
ライブラリを使用できます。pandas
このライブラリは、CSV ファイルの読み取りと処理に便利なメソッドを提供する一方、openpyxl
ライブラリは Excel ファイルの作成と書き込みに使用されます。
以下にプログラム例を示します。
import pandas as pd
# 从CSV文件读取数据
df = pd.read_csv('input.csv')
# 创建Excel Writer对象
writer = pd.ExcelWriter('output.xlsx', engine='openpyxl')
# 将数据写入Excel文件
df.to_excel(writer, index=False)
# 保存并关闭Excel文件
writer.save()
writer.close()
上記の例では、まず
pd.read_csv()
メソッドを使用して CSV ファイルからデータを読み取り、それを DataFrame オブジェクトとして保存しますdf
。次に、Excel Writer オブジェクトを作成し、それをopenpyxl
エンジンとして指定します。次に、インデックス列が含まれないことを示すdf.to_excel()
メソッドを使用してデータを Excel ファイルに書き込みます。index=False
最後に、writer.save()
を使用して Excel ファイルを保存して閉じます。
pandas
この例を実行するには、最初にとライブラリをインストールする必要があることに注意してくださいopenpyxl
。次のコマンドを使用してそれらをインストールできます。pip install pandas openpyxl
上記の方法により、CSV ファイルから XLSX ファイルにデータを簡単に書き込み、必要に応じて Excel ファイルのさらなる操作を実行できます。
2.パンダを使用しないでください
pandas
ライブラリを 使用していない場合は、openpyxl
およびcsv
モジュールを使用して、CSV ファイルから XLSX ファイルにデータを書き込むことができます。
以下にプログラム例を示します。
import openpyxl
import csv
# 创建新的XLSX文件
wb = openpyxl.Workbook()
sheet = wb.active
# 打开CSV文件
with open('input.csv', 'r') as csvfile:
reader = csv.reader(csvfile)
# 遍历CSV文件的行
for row in reader:
sheet.append(row)
# 保存XLSX文件
wb.save('output.xlsx')
- 上記の例では、最初に新しい XLSX ファイルを作成し、そのデフォルトのアクティブ シートを ( 経由で
wb.active
) 取得しました。次に、組み込みcsv
モジュールを使用して CSV ファイルを開き、csv.reader
データを読み取るオブジェクトを作成します。- 次に、
for row in reader
ループを使用して CSV ファイルの各行を反復処理し、sheet.append(row)
次を使用して各行を XLSX ファイルのシートに追加します。- 最後に、
wb.save()
メソッドを使用して XLSX ファイルを保存します。