python初心者です。
まず、csvファイルのデータをdataframeに格納してから結合させて、その文字列を「:」で分割して、またcsvファイルで出力させることを目指しています。
その時に以下のようなエラーが出現します。
・・・ Traceback (most recent call last): File "./source.py", line 14, in <module> print(last_df.split(':')) File ".\generic.py", line 4376, in __getattr__ return object.__getattribute__(self, name) AttributeError: 'DataFrame' object has no attribute 'split'
作成したsourceは以下の通りです。
source
1import os 2import glob 3import pandas as pd 4import numpy as np 5 6path = r"(csvフォルダPath)" #Path設定 7all_files = glob.glob(os.path.join(path,"*.csv")) #Path読み込み 8csv_file = (pd.read_csv(f) for f in all_files) #フォルダ内にあるcsvすべてを読み込み 9last_df = pd.concat(csv_file, axis=1 ,ignore_index=False) #読み込んだcsvファイルを結合 10 11csv_df = last_df.split(':') #[:]で列を分割 12 13#テスト用 print(csv_df) 14 15csv_df.to_csv("aaa.csv") #[aaa.csv]というファイル名で出力
.split(':') がない状態であれば、(文字列分割は行えませんが)出力に成功します。
ですが、.splitを追加するとできません。
また、str.split() というようにすると、今度は
・・・
AttributeError: 'DataFrame' object has no attribute 'str'
というエラーになってしまいます。
実現したいこと(入力⇒出力)
Exselで表すと以下の通りです。
- 以下のようなデータを含むcsvファイルが複数ある
- すべてのcsvを読み込み、(横に)結合する。
- 「:」で文字列を分割し、再びcsvで出力する。
実行環境はpython2.7及びpython3.7のどちらも実行してみましたが、同じようなエラーが出現します。
どうすれば目指していることができるようになりますか?
よろしくお願いします。
<追記>
・sourceを少し修正しました。
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2018/12/01 12:12
2018/12/02 08:54
2018/12/02 12:37