質問をすることでしか得られない、回答やアドバイスがある。

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

新規登録して質問してみよう
ただいま回答率
85.83%
Python 3.x

Python 3はPythonプログラミング言語の最新バージョンであり、2008年12月3日にリリースされました。

pandas

Pandasは、PythonでRにおけるデータフレームに似た型を持たせることができるライブラリです。 行列計算の負担が大幅に軽減されるため、Rで行っていた集計作業をPythonでも比較的簡単に行えます。 データ構造を変更したりデータ分析したりするときにも便利です。

Q&A

解決済

csvに結果をする際に行名の出力を1回のみにしたい。

KYuki1218
Muuuuki

総合スコア25

Python 3.x

Python 3はPythonプログラミング言語の最新バージョンであり、2008年12月3日にリリースされました。

pandas

Pandasは、PythonでRにおけるデータフレームに似た型を持たせることができるライブラリです。 行列計算の負担が大幅に軽減されるため、Rで行っていた集計作業をPythonでも比較的簡単に行えます。 データ構造を変更したりデータ分析したりするときにも便利です。

1回答

0グッド

0クリップ

207閲覧

投稿2023/03/25 11:37

実現したいこと

csvに結果を出力する際に下記のように行名を1回のみにしたいのですが,複数回出力されてしまいます(発生している問題・エラーメッセージのように)。for文を使用していることが原因だと思うのですが,どのように修正すれば良いかわからない状況です。また,フォルダ(path)内には100データほどあるのですが,下記例のIDのように,どのファイルの出力結果なのかもわからないため,解決策があるのであればご教示いただければ幸いです(後者のID付けは,上から数えれば解決する問題でもあるため,前者の問題のみ解決策さえ分かれば嬉しいです…)。

ID1回目2回目3回目
1323545
2587260

発生している問題・エラーメッセージ

1回目2回目3回目
323545
1回目2回目3回目
587260

該当のソースコード

python

1import glob 2import pandas as pd 3import csv 4 5path = 'パス名' 6files = glob.glob(path) 7 8for file in files: 9 df = pd.read_csv(file) 10 11#中略(angle1から3を定義) 12 13 data = [["1回目","2回目","3回目"], [angle1,angle2,angle3]] 14 15 with open("result.csv", "a", newline="") as f: 16 writer = csv.writer(f) 17 writer.writerows(data)

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

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

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

下記のような質問は推奨されていません。

  • 質問になっていない投稿
  • スパムや攻撃的な表現を用いた投稿

適切な質問に修正を依頼しましょう。

回答1

1

ベストアンサー

ループの各ステップで計算される angle1, angle2, angle3 の値を data に溜めておいて(append)、ループ処理の完了後にファイルへ出力するとよいかと思います。

python

1data = [["ID", "1回目","2回目","3回目"]] 2for i, file in enumerate(files, start=1): 3 df = pd.read_csv(file) 4 5 # 中略(angle1から3を定義) 6 7 data.append([i, angle1,angle2,angle3]) 8 9with open("result.csv", "w", newline="") as f: 10 writer = csv.writer(f) 11 writer.writerows(data)

投稿2023/03/25 11:56

melian

総合スコア17648

Muuuuki👍を押しています

下記のような回答は推奨されていません。

  • 質問の回答になっていない投稿
  • スパムや攻撃的な表現を用いた投稿

このような回答には修正を依頼しましょう。

回答へのコメント

KYuki1218

2023/03/25 12:45

迅速かつご丁寧にご対応いただきありがとうございます!無事に解決しました。 appendというものを使用するのですね。

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

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

ただいまの回答率
85.83%

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

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

質問する

関連した質問

同じタグがついた質問を見る

Python 3.x

Python 3はPythonプログラミング言語の最新バージョンであり、2008年12月3日にリリースされました。

pandas

Pandasは、PythonでRにおけるデータフレームに似た型を持たせることができるライブラリです。 行列計算の負担が大幅に軽減されるため、Rで行っていた集計作業をPythonでも比較的簡単に行えます。 データ構造を変更したりデータ分析したりするときにも便利です。