Python 重复并增加熊猫';s列值

Python 重复并增加熊猫';s列值,python,python-3.x,pandas,dataframe,Python,Python 3.x,Pandas,Dataframe,我对熊猫很陌生,所以这听起来可能很愚蠢。我的数据框如下所示: 目标是检查字段“D”并创建具有相同ID的D行,但将每行的“时间”增加5。 例如,如果ID=3,Time=0,D=5,那么我希望在具有相同ID的原始行之后有另外5行,但是每行的时间增加5。因此,时间字段将是0、5、10、15、20、25,而行中的其他字段保持不变 这在熊猫身上可能吗?我试过以下方法 df = pd.DataFrame(probeTTableTups, columns=['ID','Time','D']) df2 = d

我对熊猫很陌生,所以这听起来可能很愚蠢。我的数据框如下所示:

目标是检查字段“D”并创建具有相同ID的D行,但将每行的“时间”增加5。 例如,如果ID=3,Time=0,D=5,那么我希望在具有相同ID的原始行之后有另外5行,但是每行的时间增加5。因此,时间字段将是0、5、10、15、20、25,而行中的其他字段保持不变

这在熊猫身上可能吗?我试过以下方法

df = pd.DataFrame(probeTTableTups, columns=['ID','Time','D'])
df2 = df.loc[df.index.repeat(df.D)].reset_index(drop=True)
df2['Time'] += 5
print(df2)
我试图重复D行并将时间字段增加5,但它只是为时间创建了相同的值,而我需要在时间列中添加增量数字

非常感谢您的帮助

用于每个重复索引值的计数器和多个
5

df2 = df.loc[df.index.repeat(df.D)]
df2['Time'] = df2.groupby(level=0).cumcount() * 5
如果需要,还可以添加
次数

df2['Time'] = df2.groupby(level=0).cumcount() * 5 + df2['Time']

嘿,非常感谢,伙计!!你真的救了我一天!如果你不介意的话,我再多问一点。。级别=0意味着什么?在图片中你可以看到我目前只有一条记录。如果我有更多的记录,代码还会以同样的方式工作吗?例如,如果我现在有两个原始行。第二个是ID:4时间:700.0d:5。它还会生成7行第一条记录,然后生成5行第二条记录吗?@1010100010101010101010-正是因为这个原因,如果每个
D
有多个值,那么就需要对重复的索引值进行分组和处理。