首页 > 解决方案 > 删除熊猫数据框中列与数据类型不匹配的行

问题描述

我有一个df看起来像这样的数据框:

A     B    C
abc   10   20
def   30   50  
cfg   90   60
70   str  50
xyz   75   56

我想摆脱数据类型不匹配的第 4 行

我的代码:

df = pd.read_csv(file_path+files, delimiter='\t', error_bad_lines=False)
df.dtypes
A       object
B        int64
C       object
dtype: object

标签: pythonpandasdataframe

解决方案


如果你不知道你的专栏是什么 dtypes,我会说这不是一个微不足道的问题。

出于这个问题的目的,我假设您的 DataFrame 中只有字符串和数字类型。

v = df.apply(pd.to_numeric, errors='coerce').isna() 
df[~((x.mean() >=.5) ^ x)].dropna()

     A   B   C
0  abc  10  20
1  def  30  50
2  cfg  90  60
4  xyz  75  56

这里的想法是删除不共享大多数数据的 dtype 的行。


推荐阅读