擅长:python、mysql、java
<p>我相信这个问题可以用熊猫的“tou numeric”函数来解决。你知道吗</p>
<pre><code>import pandas as pd
df['Column to Check'] = pd.to_numeric(df['Column to Check'], downcast='integer', errors='coerce')
df.dropna(axis=0, inplace=True)
</code></pre>
<p>其中,'Column to Check'是您正在检查的列名,其中的值不能转换为整数(或任何数字类型);在您的问题中,我相信您会希望将此代码应用于'Age'和'Salary'如果这些列中的任何值不能转换为您选择的类型,则“to\u numeric”将这些列中的任何值转换为NaN。“dropna”方法将删除任何列中具有NaN的所有行。你知道吗</p>
<p>要按要求循环浏览列,可以执行以下操作:</p>
<pre><code>for col in ['Age', 'Salary']:
df[col] = pd.to_numeric(df[col], downcast='integer', errors='coerce')
df.dropna(axis=0, inplace=True)
</code></pre>
<p><strong>编辑:</strong>
作为对哈里评论的回应。如果数据中存在预先存在的NaN,则类似于下面的内容应将任何具有预先存在的NaN的有效行保留在其他列中。你知道吗</p>
<pre><code>for col in ['Age', 'Salary']:
df[col] = pd.to_numeric(df[col], downcast='integer', errors='coerce')
df = df[df[col].notnull()]
</code></pre>