<p>我有如下数据帧:</p>
<pre><code>column1 column2 column3 column4
6,546 543,254,32 (443,326) (32,000)
4,554 432,885 (88,974) 77,332
n.a - 5,332 -
... ... ... ...
# this df stretches for over 500 rows, and all columns could potentially have
# values within brackets, 'n.a', '-'
</code></pre>
<p>我遇到的问题是将<code>( , )</code>中的所有值替换为<code>-443326</code><em>ie,去掉括号和逗号</em></p>
<p>我知道我可以做<code>df.replace('n.a', numpy.nan, inplace=True)</code>,如果值匹配,这将相应地替换它们。在</p>
<p>但是,<code>df.replace('(', numpy.nan, inplace=True)</code>的相同方法不起作用。在</p>
<p>我尝试使用循环来解决我的问题:</p>
^{pr2}$
<p>这似乎有效,但它给了我一个警告信息:</p>
<pre><code>SettingWithCopyWarning:
A value is trying to be set on a copy of a slice from a DataFrame.
Try using .loc[row_indexer,col_indexer] = value instead
</code></pre>
<p>怎么回事</p>