前提
pythonを用いてCSVデータの処理を行おうとしています。
変更不要列 | 00JST | 01JST | … | |
---|---|---|---|---|
1 | - | 0.7 | 1.4 | |
2 | - | 1.2 | 0.8 | |
3 | - | 1.5 | 0.3 | |
… | - | … | … |
このようなCSVの内容なのですが、一度すべてobjectとして読み込み、指定した箇所のみをastype(float)を用いて型の変更を行いたいです。
大きめのファイルであり、データ型の混交が指摘されたため一度すべて型の指定を行って読み込みを行っています。
実現したいこと
- 指定個所のデータ型をfloatに変更したい。
発生している問題・エラーメッセージ
ValueError: could not convert string to float: '00JST'
該当のソースコード
python
1df1 = pd.read_csv('2017.csv', dtype = object) 2 3x = ['00JST','01JST','02JST','03JST','04JST','05JST','06JST','07JST','08JST','09JST','10JST','11JST','12JST','13JST','14JST','15JST','16JST','17JST','18JST','19JST','20JST','21JST','22JST','23JST'] 4df1 = df1[x].astype(float)
試したこと
replace()を用いて”JST”を取り除こうとしてみましたが同様のエラーが起きました。
補足情報(FW/ツールのバージョンなど)
python3.10.5を用いています。
初心者ですので拙い質問かもしれませんが、教えていただきたいです。
よろしくお願いいたします。
回答2件
あなたの回答
tips
プレビュー
下記のような回答は推奨されていません。
このような回答には修正を依頼しましょう。
また依頼した内容が修正された場合は、修正依頼を取り消すようにしましょう。