Home > Software design >  Assign specific value from a column to specific number of rows
Assign specific value from a column to specific number of rows

Time:11-10

I would like to assign agent_code to specific number of rows in df2.

df1 df1

df2 df2

Thank you.

df3 (Output) Output

CodePudding user response:

First make sure in both DataFrames is default index by DataFrame.reset_index with drop=True, then repeat agent_code, convert to default index and last use concat:

df1 = df1.reset_index(drop=True)
df2 = df2.reset_index(drop=True)

s = df1['agent_code'].repeat(df1['number']).reset_index(drop=True)
df3 = pd.concat([df2, s], axis=1)
  • Related