前提・実現したいこと
センサーから得られた100回分の数値データ(csvファイル)を全てエクセルファイルに変換したいと思っています。csvファイルのデータをデータフレームに入れてエクセルファイルに変換しようとしているのですが,データ型がstrのままで,floatに変換できません。ちなみにデータフレームの行数は毎回異なります。
発生している問題・エラーメッセージ
ValueError: could not convert string to float:
該当のソースコード
python files = [] for i in range(1,101): ex_num = i file_name = f"elip_{ex_num}.csv" files.append (file_name) df = pd.DataFrame() df.astype(float) df = pd.read_csv(file, sep=',', encoding='utf-8', error_bad_lines=False) df = df.drop(df.columns[[0]], axis=1) df = df.drop(df.index[[0,1]], axis=0) col = len(df) for j in range(1, col): dfs = df[j:j+1] dfs.astype(float) print (type(dfs)) df.to_excel('elipta_data.xlsx')
試したこと
DataFrameを丸ごとastype(float)で変換するのはできませんでした。drop関数を使ってstr型のデータだと思われる部分(注釈等)を消しましたが,それでも上手くいきませんでした。また各行ごとにスライスしてそれを変換しようとしましたが,上手くいきませんでした。
補足情報(FW/ツールのバージョンなど)
anacondaのjupyter labを使っています
あなたの回答
tips
プレビュー