

## やりたいこと

元のCSVを実現したいCSVにするためにはどのようなpythonコードを書けば良いでしょうか。

### 元のCSV(dataframeとします)

列A 列B 列C  
10 20 30

### 実現したいCSV

行数  
1  
列A. 列B 列C  
10\. 20. 30

列A、B、Cがあるにもかかわらず、行数という列名と値をその上に追加する。  
（本来のCSVファイル形式ではない）


CC BY-SA 4.0
2022-07-19T06:57:18.683
90077
2022-07-19T08:13:00.927
34609
question
python
特殊なCSV加工　python


この記事が応用できると考えられます。  
[Pandas の CSV に追加する](https://www.delftstack.com/ja/howto/python-pandas/pandas-
to-csv-append/)

> データを保存する上で興味深い機能として、パラメータ`a`を使った`append`モードがあり、これを使って既存の CSV
> ファイルにデータを追加することができます。

[pandas.DataFrame.to_csv](https://pandas.pydata.org/docs/reference/api/pandas.DataFrame.to_csv.html)

> mode : str  
>  Python write mode, default 'w'.

こんな風に2つのDataFrameを用意し、それぞれのDataFrameを別々に書き出して、2つ目をappendモードにすれば良いでしょう。

[code]

    import pandas as pd
    
    df1 = pd.DataFrame([[1]], columns = ['行数'])
    df2 = pd.DataFrame([[10,20,30]], columns = ['列A','列B','列C'])
    
    outfilename = 'combined.csv'
    
    df1.to_csv(outfilename, index=False, encoding='utf8')
    df2.to_csv(outfilename, mode='a', index=False, encoding='utf8')
    
[/code]

まあ最初の2行はDataFrameでは無く、単なる2行のテキストファイルであっても良いわけですが。


CC BY-SA 4.0
2022-07-19T08:13:00.927
90081
2022-07-19T08:13:00.927
26370
90077
answer