删除数据帧中包含非浮点型/整型变量的行可以通过以下步骤实现:
import pandas as pd
import numpy as np
df = pd.DataFrame({'A': [1, 2, 3, 'a', 5],
'B': [1.1, 2.2, 'b', 4.4, 5.5],
'C': ['c', 2, 3, 4, 5],
'D': [1, 2, 3, 4, 5]})
applymap
函数和isinstance
函数来检查每个元素的数据类型,并创建一个布尔型的掩码:mask = df.applymap(lambda x: isinstance(x, (float, int)))
all
函数和axis
参数来确定哪些行包含非浮点型/整型变量:rows_to_delete = df[~mask.all(axis=1)]
df = df.drop(rows_to_delete.index)
完整的代码如下所示:
import pandas as pd
import numpy as np
df = pd.DataFrame({'A': [1, 2, 3, 'a', 5],
'B': [1.1, 2.2, 'b', 4.4, 5.5],
'C': ['c', 2, 3, 4, 5],
'D': [1, 2, 3, 4, 5]})
mask = df.applymap(lambda x: isinstance(x, (float, int)))
rows_to_delete = df[~mask.all(axis=1)]
df = df.drop(rows_to_delete.index)
这样,数据帧df
中包含非浮点型/整型变量的行将被删除。
领取专属 10元无门槛券
手把手带您无忧上云