如何检查连续的相同值和值计数同时出现在大熊猫中

爱德华:

在数据框B列中,检查哪个值连续出现相同的值,以及多少次具有相同的值。

df = pd.DataFrame({'A':[1,3,4,7,8,11,1,15,20,15,16,87],
                 'B':[1,3,4,6,11,11,11,11,11,15,16,16]})

df_out=pd.DataFrame({'value':[11],
                 'values count':[5]})
耶斯雷尔:

首先按不等于且Series.shift具有累加总和的顺序仅获取连续的组,并按:获取所有重复项Series.duplicated,最后按GroupBy.size

df1 = (df[df.B.ne(df.B.shift()).cumsum().duplicated(keep=False)]
          .groupby(df['B'].rename('value'))
          .size()
          .reset_index(name='count'))
print (df1)
   value  count
0     11      5
    

详细资料

print (df[df.B.ne(df.B.shift()).cumsum().duplicated(keep=False)])
    A   B
4   8  11
5  11  11
6   1  11
7  15  11
8  20  11

Series.value_counts用于计数:

df2 = (df.loc[df.B.ne(df.B.shift()).cumsum().duplicated(keep=False), 'B']
          .value_counts()
          .rename_axis('value')
          .reset_index(name='count'))
print (df2)
   value  count
0     11      5

似乎输入数据在编辑后已更改,因此最后16创建新组:

df = pd.DataFrame({'A':[1,3,4,7,8,11,1,15,20,15,16,87],
                 'B':[1,3,4,6,11,11,11,11,11,15,16,16]})
                  
df1 = (df[df.B.ne(df.B.shift()).cumsum().duplicated(keep=False)]
          .groupby(df['B'].rename('value'))
          .size()
          .reset_index(name='count'))
print (df1)
   value  count
0     11      5
1     16      2

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

集团通过在数据帧大熊猫日期和计数值在嵌套的字典值

大熊猫从列中删除值

在所有值都相同的大熊猫中删除行

Tableau计数相同值出现在列中的次数

条件/多个值的大熊猫和numpy问题?

有条件地对大熊猫groupby对象中的值进行计数

大熊猫图值以递减方式计数barplot

大熊猫在同一行中合并相同的值

大熊猫:列中存在检查值,该值存储为列表

如何计算大熊猫列表中一列值的总出现次数?

查找具有某些条件的大熊猫的连续值

如何检查日期列在特定月份的大熊猫中?

如何删除大熊猫中与上述行具有相同值的行?

对角跨大熊猫的行和列复制值?

大熊猫在2个数据框中的映射值和外连接+聚合值

如何遍历大熊猫数据框,并在整个行中仅保留具有相同值的行?

如何获取大熊猫中连续值的比例?

如何在大熊猫中同时前进和后退?

大熊猫:索引值数组中的序列值

如何转置列并获取大熊猫中相同值的数量和百分比?

如何对大熊猫中的groupeby计数进行分类?

对第一列中的值进行计数,其中第二列的出现在UNIX中是相同的

值未出现在Datagrid中?

检查一个值是否同时出现在字符串和字典中

如何漂亮地格式化大熊猫中的列和值,使它们具有相同的宽度?

尝试使用相同值出现在多列中的 cumsum() 熊猫数据框

如何删除在 R 中出现在多行和多列中的值的行?

在熊猫数据框中分组连续相同的值和出现次数的累积计数

如何使用 setState 重置出现在对象数组中的键的相同值?