擅长:python、mysql、java
<p>我认为处理这件事有两种方法。你知道吗</p>
<p>给出:</p>
<pre><code>import pandas as pd
df = pd.DataFrame({'A':['12','$10','22','$99','100']})
df
A
0 12
1 $10
2 22
3 $99
4 100
</code></pre>
<p>1)强制<code>pandas.to_numeric(...)</code>无法转换为nan的值。这样大多数计算都会忽略它们。你知道吗</p>
<pre><code>pd.to_numeric(df.A, errors='coerce')
0 12.0
1 NaN
2 22.0
3 NaN
4 100.0
</code></pre>
<p>2)删除<code>'$'</code>(如果存在)并转换为数字,这样就不会丢失数据。你知道吗</p>
<pre><code>df.A.apply(lambda i: float(i[1:]) if i[0] == '$' else float(i))
0 12.0
1 10.0
2 22.0
3 99.0
4 100.0
</code></pre>