前提・実現したいこと
Python初学者です。
テキストデータには以下のような感じでデータがあります。
201001010101, 12.5 - 12.2 - 13.0 - 12.1 - 12.6 - 12.3 - 12.1 - 11.7 - 12.2
201001010102, 12.5 - 11.2 - 11.7 - 11.9 - 12.4
201001010103, 6.9 - 11.5 - 12.5 - 12.9 - 12.4 - 12.4 - 12.9 - 12.7 - 13.6
201001010104, 7.0 - 11.4 - 12.1 - 11.6 - 12.1 - 11.9 - 11.5 - 11.9
...
まずは', 'までの'2010...'の部分をindexとして、', '以降の部分をDataFrameとして保存したいのですができません。ご教授お願いします。あとそこから' - 'で区切って1列ずつデータを保存できますでしょうか。
発生している問題・エラーメッセージ
TypeError: Index(...) must be called with a collection of some kind, '20100101010' was passed
該当のソースコード
import pandas as pd with open('time.txt', 'r', encoding = 'UTF-8') as f: data = f.read() splited_data = data.splitlines() for key in range(0,len(splited_data),1): final_data = pd.DataFrame(splited_data[key][13:], index=splited_data[key][0:11])
試したこと
最初は以下のようにしてやっていました。
splited_data = data.splitlines().split(',' , expand = True)
そうすると以下のようなエラーが出たため,とりあえずlist型のままデータを入れてみようとした次第です。
AttributeError: 'list' object has no attribute 'split'
この辺も教えていただければ幸いです。
補足情報(FW/ツールのバージョンなど)
回答2件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2022/01/13 13:11