【问题标题】:Filter on specific value dataframe pandas/ python过滤特定值数据框 pandas/python
【发布时间】:2021-06-01 07:41:44
【问题描述】:

我想创建一个过滤数据框列中特定值的函数(
我的数据框具有以下列和值:

Zoekterm High_bias
Man 1
Man 1
Vrouw 1
kind 0

我写了一个过滤特定值的函数,见下文

Def most_likey_bias():                                                                                              
bias = data['high_bias'] == 1                                                                                         
if bias.any():                                                                                                
  print(data.loc[bias,['High_bias','Zoekterm']                                                                 
print(most_likey_bias())

表格的结果是:

Zoekterm High_bias
vrouw 1
kind 1

该表给出了哪个“Zoekterm”的值为 1
但是因为“Zoekterm”有同名的重复项,所以我想要一个表格来计算每个 zoekterm 所以我想要的表是:
这意味着一个表格,它根据特定值 (1) 计算每个“Zoekterm”有多少“高偏差”

Zoekterm High_bias
Man 4
Vrouw 2
kind 5

我尝试了 groupby 或 count,但我不明白。谁能给我一些建议。

【问题讨论】:

    标签: python pandas dataframe data-science


    【解决方案1】:

    GroupBy.size 与过滤的行一起使用,并通过Series.reset_indexSeries 转换为DataFrame:

    def most_likey_bias():                                      
        bias = data['high_bias'] == 1                                    
        if bias.any():                                            
            return data[bias].groupby('Zoekterm').size().reset_index(name='High_bias')
    

    类似的想法是聚合sum:

    def most_likey_bias():                                      
        bias = data['High_bias'] == 1                                    
        if bias.any():                                            
            return data[bias].groupby('Zoekterm')['High_bias'].sum().reset_index(name='High_bias')
    

    print (most_likey_bias())
      Zoekterm  High_bias
    0      Man          2
    1    Vrouw          1
    

    【讨论】:

    • 嗨,jezrael,我在解析时遇到了一个意外的 EOF,我尝试了很多方法,但它不起作用:这就是我的代码:def most_likey_bias():bias = data['high_bias'] == 1 if bias.any():返回数据[bias].groupby('Zoekterm').size().reset_index(name='High_bias') print(most_likey_bias)
    • @LeylaElkhamlichi - 经过测试,对我来说效果很好。只需要像print (most_likey_bias()) 这样的调用函数 - () 丢失了
    • 感谢这个工作:) 感谢您的时间和提示
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2018-09-29
    • 2018-06-07
    • 1970-01-01
    • 2018-03-27
    • 1970-01-01
    • 2021-11-04
    • 1970-01-01
    相关资源
    最近更新 更多