当前位置: 首页 > 知识库问答 >
问题:

来自数据帧的异常报告

常甫
2023-03-14

背景:
下面的函数使用一个熊猫数据帧,并将其重命名为exceptions_df,同时对其应用2x条件。

功能:

def ownership_exception_report():
    df = ownership_qc()
    exceptions_df = df[df['Entity ID %'] != 100.00]
    exceptions_df = df[df['Account # %'] != 100.00]
    return exceptions_df

我的问题:
虽然我的代码工作正常,但我想知道是否有一种简单且更有说服力的方法可以将2x条件应用于DataFrame并重新保存它?目前,我只是重新保存了exceptions_df两次,这似乎相当混乱。或者也许我错了,这是将条件应用到DataFrame的正确方法?

共有1个答案

汪鸿志
2023-03-14
def ownership_exception_report():
    df = ownership_qc()
    return df[(df['Entity ID %'] != 100.00) & (df['Account # %'] != 100.00)]

或:

def ownership_exception_report():
    df = ownership_qc()
    return df[df['Entity ID %'].ne(100.00) & df['Account # %'].ne(100.00)]

两者都将返回一个df副本,其中只有实体ID%100账户#%100的行。

 类似资料:
  • 我有3个数据帧。第一数据帧(例如df1)具有多行和多列。第二和第三数据帧(例如df2和df3)仅具有来自DF1的一行和列的子集。df2和df3中的列名相同。所以我要做的是将df1中的每一行与df2和DF3中的单行进行比较。如果来自df1的单元格的值与df2的单元格内容匹配,则将df1中单元格的值替换为1;如果来自df1的单元格的值与df3匹配,则将df1中单元格的值替换为2;如果df2的单元格内容

  • 我有两个数据帧df1和df2。df1就像一个具有以下值的字典 df2具有以下值: 我想基于df1数据帧中的,将df2拆分为3个新的数据帧。 日期,TLRA_权益栏应位于数据框 预期产出: > 数据帧 消费者,非周期性数据帧 请让我知道如何有效地做。我想做的是连接列名,例如,然后根据列名的前半部分分割数据帧。 代码: 但这很复杂。需要更好的解决方案。

  • 问题内容: 我有一个熊猫数据框,看起来像这样: 一千行左右,六列。大多数单元格为空(NaN)。考虑到不同的列中包含文本,我想知道每列中文本的概率是多少。例如,这里的小片段将产生如下内容: 也就是说,Al01栏中有4个匹配项;在这4个匹配中,BBR60列中没有匹配,CA07列中也没有匹配,NL219列中有3个匹配。等等。 我可以遍历每一列并使用值构建字典,但这似乎很笨拙。有没有更简单的方法? 问题答

  • 问题内容: 我有以下代码: 抛出一个。我不想在这里处理此问题,但是将异常从抛出给的调用者。 问题答案: 您的代码建议您稍后以相同的方法使用异步操作的结果,因此无论如何都必须进行处理,因此一种处理方法是 在的异步处理中抛出的所有异常都将在调用时包装为一个,除了我们已经包装在一个。 当重新引发的原因时,我们可能会遇到未检查的异常,即or的子类或我们的自定义检查的异常。上面的代码通过多次捕获来处理所有这

  • 我需要按行比较两个不同大小的数据帧,并打印出不匹配的行。让我们看以下两个例子: 在df2上按行打印并打印出不在df1中的行的最有效方法是什么。 重要提示:我不希望有行: 包括在差异中: 我已经尝试过了:逐行比较两个不同长度的数据帧,为每行添加相等值的列,比较两个数据帧,并排输出它们的差异 但是这些和我的问题不匹配。

  • 我有一个很少列的熊猫数据帧。 现在我知道某些行是基于某个列值的离群值。 例如: 列“vol”具有附近的所有值,其中一个值为(离群值)。 现在,我想排除那些具有列的行,如下所示。 所以,本质上我需要在数据帧上放一个过滤器,这样我们就可以选择某一列的值在均值的3个标准差范围内的所有行。 什么是一个优雅的方法来实现这一点?