Python 在特定条件下删除整行
我想知道,如果给定一列中的条件(异常值),是否有一种方法可以删除数据帧的整行 Df 名称 价值 树 300 橙色 50 苹果 75 芒果 60 樱桃 1.Python 在特定条件下删除整行,python,pandas,Python,Pandas,我想知道,如果给定一列中的条件(异常值),是否有一种方法可以删除数据帧的整行 Df 名称 价值 树 300 橙色 50 苹果 75 芒果 60 樱桃 1. 这是一个相当主观的问题。没有一种明确的方法可以做到这一点。事实上,有多种方法可以做到这一点。使用描述性统计数据构建逻辑,然后对其进行编码 在这种情况下,我定义上限和下限,然后使用pandas mask进行过滤。代码如下 lower_limit=1 Upper_limit=100 df=df.assign(Value=df['Value'].
这是一个相当主观的问题。没有一种明确的方法可以做到这一点。事实上,有多种方法可以做到这一点。使用描述性统计数据构建逻辑,然后对其进行编码 在这种情况下,我定义上限和下限,然后使用pandas mask进行过滤。代码如下
lower_limit=1
Upper_limit=100
df=df.assign(Value=df['Value'].where(df['Value'].between(lower_limit,Upper_limit))).dropna()
Name Value
1 Orange 50.0
2 Apple 75.0
3 Mango 60.0
4 Cherry 1.0
df[df.apply(lambda行:行['Value']>下限和行['Value']<上限,轴=1)]
apply()
返回一个布尔序列,表示每个df['Value']
值是否为异常值<代码>df['Value']。介于(下限、上限)之间具有相同的效果
Dataframe可以接受布尔索引。这样做的效果是删除对应的假行,保留对应的真行。您想知道如何定义异常值吗?请浏览、和,了解该网站的工作原理,并帮助您改进当前和未来的问题,这可以帮助您获得更好的答案。“演示如何解决此编码问题?”与堆栈溢出无关。您必须诚实地尝试解决方案,然后询问有关实现的特定问题。仅根据columnStack溢出的条件删除整个dataframe行并不是为了替换现有教程和文档。从有关DF筛选和
drop
的教程部分中,您到底不了解什么?也许您只需要使用DF.loc[~DF[colname==value]]
即可获得所需的内容。就像Prune和其他人所说的,请浏览熊猫文档以获得基本的过滤选项