🎄teratailクリスマスプレゼントキャンペーン2024🎄』開催中!

\teratail特別グッズやAmazonギフトカード最大2,000円分が当たる!/

詳細はこちら
CSV

CSV(Comma-Separated Values)はコンマで区切られた明白なテキスト値のリストです。もしくは、そのフォーマットでひとつ以上のリストを含むファイルを指します。

ファイル

ファイルとは、文字列に基づいた名前又はパスからアクセスすることができる、任意の情報のブロック又は情報を格納するためのリソースです。

Python

Pythonは、コードの読みやすさが特徴的なプログラミング言語の1つです。 強い型付け、動的型付けに対応しており、後方互換性がないバージョン2系とバージョン3系が使用されています。 商用製品の開発にも無料で使用でき、OSだけでなく仮想環境にも対応。Unicodeによる文字列操作をサポートしているため、日本語処理も標準で可能です。

Q&A

解決済

1回答

2862閲覧

CSVファイルからEXCELファイルに変換できない…(中身がコピーされない…)

JM235

総合スコア19

CSV

CSV(Comma-Separated Values)はコンマで区切られた明白なテキスト値のリストです。もしくは、そのフォーマットでひとつ以上のリストを含むファイルを指します。

ファイル

ファイルとは、文字列に基づいた名前又はパスからアクセスすることができる、任意の情報のブロック又は情報を格納するためのリソースです。

Python

Pythonは、コードの読みやすさが特徴的なプログラミング言語の1つです。 強い型付け、動的型付けに対応しており、後方互換性がないバージョン2系とバージョン3系が使用されています。 商用製品の開発にも無料で使用でき、OSだけでなく仮想環境にも対応。Unicodeによる文字列操作をサポートしているため、日本語処理も標準で可能です。

0グッド

0クリップ

投稿2020/11/28 22:07

python初心者です。

CSVをEXCELファイルに変換するプログラムを作成しました。そのプログラムを実行した際、EXCELファイルはきちんと作成されるのですが、なぜかEXCELファイルの中身は空です。CSVの中身は全くコピーされていません。

エラーメッセージもないので、なぜ上手くいかないのか分からずに困っています。

ご親切なか方、教えてください!ちなみに、ファイルの閲覧には”Kuto csv editor”というものを使っています。

import pandas as pd import openpyxl import xlwt code = 6758 df = pd.read_csv("code+'.csv'",encoding="shift_jis") df.to_excel("6758.xlsx", encoding='utf-8') print("完了しました!")

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答1

0

ベストアンサー

CSVファイル名の生成部分がおそらく意図したとおりに動いていません。

"code+'.csv'"では、変数codeの値6758は展開されません。code+'.csv'というファイル名から読み込みます。ここでエラーメッセージが出ないと言うことは、「code+'.csv'」というファイルが存在するのでは。

str(code) + '.csv'あるいはf"{code}.csv"と書けば、codeの値6758を展開したファイル名6758.csvから読み込みが行われます。

投稿2020/11/29 00:14

編集2020/11/29 01:49
Daregada

総合スコア11990

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

JM235

2020/12/01 14:36

ご回答していただき、ありがとうございます。 str(code) + '.csv' f"{code}.csv" の両方とも試してみたのですが、やはり中身が全くコピーされません…
Daregada

2020/12/01 15:00

read_csvを行なっている行より後に「print(df)」を入れて、dfに読んだ内容を表示すると、何が表示されますか?
JM235

2020/12/01 16:07

夜分遅くにお返事していただき、ありがとうございます。 read_csvを行なっている行より後に「print(df)」を入れたところ、CSVのデータが出力されました。
Daregada

2020/12/01 16:47 編集

なら、問題はto_excelのほうにありそうですね。 "6758.xlsx"と指定されている出力ファイルがすでに存在していたら、一度削除してからプログラムを実行してみるとか、そのファイルが他のアプリで開いたままになっていないか確認するとかしてください。
JM235

2020/12/02 04:56

何度もご回答していただき、本当にありがとうございます。 xlsxのファイルをExcelオンラインにアップロードし、確認してみたところデータの中身がきちんとコピーされていました! このたびはご親切に回答をしていただき、ありがとうございました!
Daregada

2020/12/02 06:49

もしかして、xlsxファイルの中身をVSCodeで見ようとしたら、何も表示されない→中身が書かれていないに違いない、みたいなオチだったのかな
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.36%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問