当尝试将Pandas系列转换为float时,出现此错误消息。它引用一个空字符串(“”),它不是np.nan。只是一个空字符串。
我尝试用np.nan替换“”,但是它没有任何作用。我也尝试用“”替换“”,但它也无济于事。
import pandas as pd
import numpy as np
df = pd.DataFrame(np.array([[1, 2, 3], [4, " ", 6], [7, 8, 9]]), columns=['a', 'b', 'c'])
df.astype(float)
ValueError:无法将字符串转换为浮点数:
在大型数据框中,我想用NaN值替换这些“”。
答案 0 :(得分:1)
您可以使用df.replace()函数执行此操作
df.replace(r'^\s*$', np.nan, regex=True)