CSVファイルを縦方向に結合するコードです。
縦方向に結合する場合は読み込み時にheader=Noneを付けて、書き込み時にheader=Falseを付けます。
headerがないと列インデックスが自動的に付加されるため、これに従ってデータが縦方向に並びます。
横方向に結合する場合は読み込み時、書き込み時ともにheaderオプションはいらないはずです。
なおformat文字列はかつての名残りです。
# filenameNとfilenamePを縦方向に結合する
# 最初にfilenameNのみのCSVファイルを作成し、結合したファイルで上書きする
# この方法ではfilenamePが存在しなくてもfilenameNのみのファイルが結合ファイルとして残る
# else以下は1つ上の階層に置く方が良いと思ったが、検証ではNGだったのでこれで仮確定させた
files = [filenameN , filenameP]
row_list = []
for file in files:
try:
row_list.append(pd.read_csv(file,header= None,encoding='Shift_JIS'))
except FileNotFoundError:
print('FileNotFoundError')
print(f'ファイルがありません {file}')
else:
df = pd.concat(row_list, sort=False)
filename = filename_horse(str(year),str(thousand),str('{0:05d}'.format(horse_number)))
with open(filename, mode="w", encoding="cp932", errors="ignore") as f:
df.to_csv(f,index= False,header= False)