前提・実現したいこと
replace()で作った空欄がある行を消したい
「はじめから'*'を空欄にしておけばいいじゃん」というコメントはご遠慮お願いいたします
発生している問題・エラーメッセージ
ValueError: could not convert string to float: ''
該当のソースコード
python3
1import pandas as pd 2import numpy as np 3 4df = pd.read_csv('tetest.csv') 5 6df2 = df.drop('600',axis=1) 7df2 = df[df['700'] != 100].reset_index(drop=True) 8 9df3 = df2[['700','200','300','400','500']] 10 11df4 = df3.replace('*', '') 12 13df5 = df4.dropna() 14 15ndArray = df5.values 16 17npArray = ndArray.astype(np.float32) 18 19print(npArray)
試したこと
後述のcsvファイルの'*'をはじめから空欄にしてみました
その結果、print(npArray)を実行することができました
補足情報(FW/ツールのバージョンなど)
tetest.csv
700,200,400,300,600,500 1,33,1000,28,,1 2,20,2002,27,,* 3,25,1001,24,,0 4,34,2000,36,,1 5,21,2001,32,,1 No,a,b,,500, 1,7,1,,1, 2,1,0,,0, 3,9,0,,0, 4,17,0,,0, 5,13,1,,1, 6,16,1,,1,
回答2件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2021/04/21 12:41