実現したいこと
複数のCSVファイルの表の最大値と別の項目を抽出したい。
その後抽出したものを結合させたい。
前提
上記のようなシステムを作ってます。
項目は「日付」と「株価」なのですが、
CSVファイル単体であれば、ファイル名を指定して抽出することに成功しているのですが、複数のCSVファイルを読み込む場合にValueErrorが発生します。
発生している問題・エラーメッセージ
FutureWarning: The frame.append method is deprecated and will be removed from pandas in a future version. Use pandas.concat instead. df2 = df.append(df, ignore_index=True) Traceback (most recent call last): File "C:\Users\〇〇\PycharmProjects\kabutan\cupandhandle.py", line 26, in <module> df2 = df2.concat(df) File "C:\ProgramData\Anaconda3\lib\site-packages\pandas\core\generic.py", line 5575, in __getattr__ return object.__getattribute__(self, name) AttributeError: 'DataFrame' object has no attribute 'concat'
該当のソースコード
python
1import pandas as pd 2import glob 3 4csv_files = glob.glob('./data/*.csv')5 6list = []7 8for file in csv_files:9 df = pd.read_csv(file)10 max_colums = df[['SC', '日付', '株価']].groupby('株価').max()11 df = max_colums.tail(1)12 13 14 #ここから追記15 df2 = df.append(df, ignore_index=True)16 df2 = df2.concat(df)17 print(df2)
試したこと
単体で読込、抽出するコードはこちらです。(こちらは解決しました。)
色々調べたのですが、複数ファイルとなると中々見つけきれず、お分かりの方いらっしゃたら、ご教授いただきたいです。
宜しくお願い致します。
[結合]if文内に.append関数を使って増やしていこうとしたのですが、2個しか出力されなかった為、concatを追加したら上記エラー内容で返ってくる。
補足情報(FW/ツールのバージョンなど)
python3.9
0 コメント