python - 如何在 Pandas 中过滤掉具有特定值的行后创建数据帧的反转
问题描述
我有这个数据框,其中有一些包含特殊字符(“+”)的行,我想过滤和删除这些行。“+”在每一列中。
Acceleration Aggression Agility Balance Ball control Composure Crossing Curve Dribbling Finishing Free kick accuracy GK diving GK handling GK kicking GK positioning GK reflexes Heading accuracy ID Interceptions Jumping Long passing Long shots Marking Penalties Positioning Reactions Short passing Shot power Sliding tackle Sprint speed Stamina Standing tackle Strength Vision Volleys
1495 72 80 68 59 68 69 54 59 71 79 44 15 7 6 16 16 69 211899 36 65 48 72 27 66 77 74 68 81 28 77 80 35 81 63 73
1496 54 76 60 53 68 68 44 68 63 46 76 11 14 6 9 9 76 205756 73 79 71 60 74 63 41 74 73 83 77 56 64 76 80 61 43
1497 75+1 66 68+2 64 77 72 75 62 73+2 44 46 15 10 8 13 11 64 193470 73 67+2 74+2 41 78 49 74 72+1 78 56 78+1 74+1 74+2 79 68+1 69 39
我尝试使用
df1=df.stack().str.contains(r'[+-/*]')
创建一个过滤器,但我似乎无法让它工作。处理这个的更好方法是什么?
解决方案
列标题中的空格分隔符在您的示例数据中有点不一致。在所有列中用NaN替换无效数字的最简单方法如下。
df = pd.read_csv(io.StringIO(""" Acceleration Aggression Agility Balance Ball control Composure Crossing Curve Dribbling Finishing Free kick accuracy GK diving GK handling GK kicking GK positioning GK reflexes Heading accuracy ID Interceptions Jumping Long passing Long shots Marking Penalties Positioning Reactions Short passing Shot power Sliding tackle Sprint speed Stamina Standing tackle Strength Vision Volleys
1495 72 80 68 59 68 69 54 59 71 79 44 15 7 6 16 16 69 211899 36 65 48 72 27 66 77 74 68 81 28 77 80 35 81 63 73
1496 54 76 60 53 68 68 44 68 63 46 76 11 14 6 9 9 76 205756 73 79 71 60 74 63 41 74 73 83 77 56 64 76 80 61 43
1497 75+1 66 68+2 64 77 72 75 62 73+2 44 46 15 10 8 13 11 64 193470 73 67+2 74+2 41 78 49 74 72+1 78 56 78+1 74+1 74+2 79 68+1 69 39"""), sep="\s\s+", engine="python")
df.apply(pd.to_numeric, errors="coerce")
推荐阅读
- php - WooCommerce ajax 获取订单状态并重定向到 url
- javascript - React 函数高阶组件
- python - 如何加快熊猫 drop() 方法?
- magento - 如何解决未定义索引的问题:在 magento 2.3.1 中自定义导入期间的 sku
- python - 二进制编码或填充神经网络中的输入序列?
- typescript - 在打字稿中显式分配任何类型
- python-3.x - 如何在低分辨率图像上检测 aruco 标记
- django - 在 Django 中重试任务的最佳位置:请求或 celery 任务
- python - 如何将光标移动到pywinauto中的特定坐标?
- r - 如何用第二个指标 geom_tile 图层覆盖 geom_tile 热图?