# how do i calculate a percentage of our population using a panda?

Well answer for question one could be:

``````#step  1 Import pandas
import pandas as pd

df=pd.DataFrame(data)

# step 2 printing the dataframe
df

# step 3 Calculating the pecentage:

df['percentage of sales'] = (df['Sales'] / df['Sales'].sum())*100

# step 4 :joining this table percentage to the main dataframe
pd.concat([df, df[['percentage of sales ']]], axis=1, sort=False)
``````

Answer for question 2: its depends, what is the condition you want to do.

assumming the logic : that is one way ,

but the easy way to answer question 1 and 2 is to convert dataframe into a numpy array then do the operation , and then bring it back to dataframe. 1 check this answers: Add column for percentage of total to Pandas dataframe

``````#Converting the percentage column to numpy array
npprices=df['percentage'].to_numpy()
npprices
#loop through the rows and fill the row next row with value from previous row, ASSUMING previous row is not zero.

for i in range(len(npprices)):
if npprices[i]==0:
npprices[i]=npprices[i-1]

#converting in to dataframe back
percentage1=pd.DataFrame({'percentage2':npprices})

# the joing this percentage row to to dataframe

df2i=pd.concat([df, percentage1[['percentage2']]], axis=1, sort=False)
`````` NOTE I added it twice, by mistake. But of course, there could be other easier approach, I hope this helps