【问题标题】:Do sth. if occurrence of value in a column equals 1 in a panda data frame做某事。如果在熊猫数据框中列中的值等于 1
【发布时间】:2019-02-22 16:04:40
【问题描述】:

我从几个小时开始就试图弄清楚如何处理一个值在我的数据框的一列中只出现一次的情况。在这种情况下,我想做任何动作。 示例:

df = pd.DataFrame([(1,1,1,2,3,3],columns=['id']
for i, g in df.groupby('id'):
    df_counter=df.loc[df['id'] == i]
    if(df_counter.count()<=1):
      #...do sth
    else:
      #anything else

所以如果 i = 2,我想做某事。因为它只在id 列中出现一次。否则我会做其他事情。 我的方法不起作用。知道怎么做吗?

【问题讨论】:

  • 几个小时前你确实问过这个问题here。为什么不澄清这个问题而不是发布另一个问题?也可能包括一些# do something 是什么的例子。取决于可以改变答案的复杂性。
  • @ALollz,我是新来的,抱歉重复了。我刚刚看到我在第一次尝试时没有很好地描述我的问题。
  • @ALollz #do sth 真的一点都不重要。我想要的只是处理一个值在一列中只出现一次的情况。如果出现超过 1 次,请执行其他操作。

标签: python pandas loops count


【解决方案1】:

我是这样解决的:

df = pd.DataFrame([(1,1,1,2,3,3],columns=['id']
for i, g in df.groupby('id'):
    count= df[df.id == i].shape[0]
    if(count==1):
        #do sth.

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2023-03-14
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多