Python 如何将此字符串序列转换为数字序列

Python 如何将此字符串序列转换为数字序列,python,string,pandas,series,Python,String,Pandas,Series,我有一个熊猫系列,如下所示: series = pd.Series(['', '', '$ 200,000', '$ -320,000','$ 700,000','','$ -10,000']) 我需要通过删除“$”和逗号将序列中的所有字符串值转换为整数或浮点。我尝试了以下方法: for i in series: if '$ ' in i: i=i.replace('$ ',"") series = pd.to_numeric(series, errors='coer

我有一个熊猫系列,如下所示:

series = pd.Series(['', '', '$ 200,000', '$ -320,000','$ 700,000','','$ -10,000']) 
我需要通过删除“$”和逗号将序列中的所有字符串值转换为整数或浮点。我尝试了以下方法:

for i in series:
    if '$ ' in i:
        i=i.replace('$ ',"")
series = pd.to_numeric(series, errors='coerce')

但是,替换方法不会更改序列。我还不确定pd.to_数值方法是否能帮我把这个系列和数字结合起来。请协助

替换
为数字
  • 删除任何不是数字、句点/小数点或减号的内容
  • 使用
    pandas.Series.str.replace
    默认使用正则表达式

等价地:
pandas.Series.replace
必须被告知需要使用正则表达式

pd.to_numeric(series.replace('[^0-9\.-]', '', regex=True))
pd.to_numeric(series.replace('[^0-9\.-]', '', regex=True))