我有以下格式的CSV数据:
+-------------+-------------+-------+
| Location | Num of Reps | Sales |
+-------------+-------------+-------+
| 75894 | 3 | 12 |
| Burkbank | 2 | 19 |
| 75286 | 7 | 24 |
| Carson City | 4 | 13 |
| 27659 | 3 | 17 |
+-------------+-------------+-------+
Location
列属于object
数据类型。我想做的是删除所有具有非数字位置标签的行。因此,根据上表,我的期望输出是:
现在,我可以用以下方式硬编码解决方案:
list1 = ['Carson City ', 'Burbank'];
df = df[~df['Location'].isin(['list1'])]
其灵感来自以下帖子:
How to drop rows from pandas data frame that contains a particular string in a particular column?
但是,我要找的是一个通用的解决方案,它适用于上面列出的任何类型的表。在
或者你也可以
^{pr2}$您可以使用
pd.to_numeric
将非数值强制到nan
,然后根据位置是否为nan
进行过滤:相关问题 更多 >
编程相关推荐