Pad*_*123 1 python integer pandas
我有一个 Pandas 数据框,其中有一列可以包含整数、浮点数、字符串等。我想遍历所有行并检查每个值是否为整数,如果不是,我想创建一个包含错误值(值)的列表不是整数)
我尝试过 isnumeric(),但无法遍历每一行并将错误写入输出。我尝试使用 iterrows() 但它将所有值转换为浮点数。
ID Field1
1 1.15
2 2
3 1
4 25
5 and
Run Code Online (Sandbox Code Playgroud)
预期结果:
[1.15,"and"]
Run Code Online (Sandbox Code Playgroud)
如果“Field1”是一列字符串,则使用str.isdigit(仅对整数返回 True)并否定:
df.loc[~df['Field1'].str.isdigit(), 'Field1'].tolist()
# ['1.15', 'and']
Run Code Online (Sandbox Code Playgroud)
或者,如果列包含混合类型,请使用
df.loc[~df['Field1'].astype(str).str.isdigit(), 'Field1'].tolist()
# [1.15, 'and']
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
17076 次 |
| 最近记录: |