reindex+
repeat
df.reindex(df.index.repeat(df.persons))Out[951]: pre . role ..1 persons0 123 . Janitor . 30 123 . Janitor . 30 123 . Janitor . 31 123 . Analyst . 21 123 . Analyst . 22 321 . Vallet . 22 321 . Vallet . 23 321 . Auditor . 53 321 . Auditor . 53 321 . Auditor . 53 321 . Auditor . 53 321 . Auditor . 5
PS:您可以添加
.reset_index(drop=True)以获取新索引



