求教大神,想要计算一下一列中每一个数字连续出现的次数,请问有什么简单的方法吗?因为原始数据非常大,所以希望性能好一点,谢谢~
df1 = pd.DataFrame({'X': [1, 2, 2, 1, 1, 1, 2, 1, 1, 1]})
df1
希望生成以下的结果
求教大神,想要计算一下一列中每一个数字连续出现的次数,请问有什么简单的方法吗?因为原始数据非常大,所以希望性能好一点,谢谢~
df1 = pd.DataFrame({'X': [1, 2, 2, 1, 1, 1, 2, 1, 1, 1]})
df1
希望生成以下的结果
2 回答5.1k 阅读✓ 已解决
2 回答1.1k 阅读✓ 已解决
4 回答1.4k 阅读✓ 已解决
3 回答1.3k 阅读✓ 已解决
3 回答1.2k 阅读✓ 已解决
1 回答1.7k 阅读✓ 已解决
1 回答1.2k 阅读✓ 已解决
使用Python原生的
itertools
中的函数可以完成.会得到到如下结果:
接下来是得到每个group的长度:
结果如下:
将
grouped_cnt_list
这个变量flatten之后并作为新的column添加到dataframe中:参考官方文档: