python - 计算另一列中重复数字的序列 - 熊猫
问题描述
我有以下数据框:
df = pd.DataFrame({'vehicle':[1,1,1,1,1,2,2,2,1,1,1,2,2,2,2,1,1],
'waypoint':[1,2,3,4,5,1,2,3,1,2,3,1,2,3,4,1,2]})
我需要计算新列中“车辆”列中重复值的序列,以显示序列出现的次数。例如,车辆编号 1 的序列将为新列编号 1,如果出现另一个车辆编号 1 的序列,则新列将 = 2。上述数据帧的所需输出为:
df = pd.DataFrame({'vehicle':[1,1,1,1,1,2,2,2,1,1,1,2,2,2,2,1,1],
'waypoint':[1,2,3,4,5,1,2,3,1,2,3,1,2,3,4,1,2],
'trip':[1,1,1,1,1,1,1,1,2,2,2,2,2,2,2,3,3]})
谢谢
解决方案
我不知道如何在 pandas 中执行此操作,但这已在 itertools 中解决。
from itertools import groupby
sequence = [1,1,1,1,1,2,2,2,1,1,1,2,2,2,2,1,1]
for i,j in groupby(sequence):
print(i,'repeats',len(list(j)))
推荐阅读
- reactjs - 图像的 Chrome CORBS 问题
- elasticsearch - 如何为深度嵌套的 JSON 文档设置全文搜索?
- azure-active-directory - Microsoft Graph - WithCertificate - 失败并显示“提供的证书具有不可访问的密钥”。
- python - 用重复的列名做一个熊猫左合并(想删除左边并保持右边)
- amazon-web-services - Power BI 部署在 AWS 和 GCP 中?
- python - 将 PDF 转换为 .ipynb(从 PDF 中恢复 Jupyter 笔记本)
- python - 即使连接关闭,如何让我的套接字继续尝试连接?
- c++ - 为什么我们使用 const char* func() 而不是 char func()
- python - 解析列表以查找数字序列
- java - 如何在 jsonnet 文件中设置主机名?