python - 过滤 Pandas 数据框列中的字符串/ float /整数值

标签 python pandas dataframe filter integer

如何在如下所示的 pandas 数据框中仅过滤一列 (SIC) 中的字符串值/整数/浮点值?

                         SIC
1                      246804
2                      135272
3                      898.01
4                     3453.33
5                       shine  
6                        add
7                         522
8                         Nan
9                      string
10                      29.11
11                        20    

最佳答案

您可以使用 pd.to_numeric 和 bool 索引的输出。

要仅获取字符串,请使用:

df[pd.to_numeric(df.SIC, errors='coerce').isnull()]

输出:

      SIC
5   shine
6     add
8     Nan
9  string

要仅获取数字,请使用:

df[pd.to_numeric(df.SIC, errors='coerce').notnull()]

输出:

        SIC
1    246804
2    135272
3    898.01
4   3453.33
7       522
10    29.11
11       20

关于python - 过滤 Pandas 数据框列中的字符串/ float /整数值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45338209/

相关文章:

python-3.x - Pandas 按值和索引对 DF 进行排序

python - 选择每个组的模式并根据条件分配回原始数据框

python - 如何使用 python 将 CSV 表写入 docx

python - 在应用服务计划下的 azure 功能中发送电子邮件

python - 如何计算第一和第三四分位数?

python - 按月对分组

python - 如何从 Python 使用 Windows CryptoAPI?

python - 我怎样才能让 pandas 时间戳抵消一定的月数?

python - 来自 Pandas Edgelist 数据帧的无向图的邻接矩阵

python - 如果与数据框中给定列表相同,则分配标签值