python - 如何将升序的连续数字标记到列中的值上?
问题描述
我有一个看起来像这样的列:
1
0
0
1
0
0
0
1
我希望输出看起来像这样:
1 <--
0
0
2 <--
0
0
0
3 <--
等等。我不知道从哪里开始。大约有 10,000 行,我觉得做一个 if 语句可能需要一段时间。我如何实现这个输出?
解决方案
高效简洁:
s.cumsum()*s
0 1
1 0
2 0
3 2
4 0
5 0
6 0
7 3
dtype: int64
推荐阅读
- c++ - 使用 C++ 在 MFC 对话框中显示位图图像
- r - 在 R 中,如何找到位于工作目录之上的任何父目录中的文件?
- spring - 在 Spring Boot 规范中排序
- yaml - 资源 SecretsManager 的资源属性 MySecretA 无效,如何在 yml 中创建多个秘密?
- php - 在上传到 S3 存储桶之前减少 Laravel 中的图像大小(不是尺寸)
- javascript - 如何将表单验证发布到一个警报()?
- java - 如何在 Geronimo Server 中安装证书并传递用户名和密码
- python - Pandas:根据列的差异创建包含组的列
- sass - 生成动态 SCSS 变量
- performance - vtune 测量中的函数 CPU 时间可加性