此问题在此处已有答案:
How can I do a sequential count based on column value and timestamp in pandas?(3个答案)
12天前关闭
我有一个基于字符串信息生成id(没有哈希等复杂性)的框架。代码如下:
df['id'] = df.City.str[:3] + '-' + df.Name.str[:3] +'-' + df.index.astype(str)
City Name Id
Paris John Par-Joh-1
Paris Paul Par-Pau-2
Paris Pierre Par-Pie-3
Paris Paula Par-Pau-4
Rome Riccardo Rom-Ric-5
Rome Jean-Paul Rom-Jea-6
Rome Franc Rom-Fra-7
字符串
我的问题是,当列City
的名称更改时,代码不会重新启动count(见上文)。我如何调整代码以达到所需的输出(见下文)?
City Name Id
Paris John Par-Joh-1
Paris Paul Par-Pau-2
Paris Pierre Par-Pie-3
Paris Paula Par-Pau-4
Rome Riccardo Rom-Ric-1
Rome Jean-Paul Rom-Jea-2
Rome Franc Rom-Fra-3
型
谢谢你
1条答案
按热度按时间xzlaal3s1#
将
GroupBy.cumcount
与add1
一起使用并转换为string
:字符串