Add a percent sign to a dataframe column in Python

You can do it like that too :

df['Percent'] = df['Grade'].apply( lambda x : str(x) + '%')

Cast the dtype to str using astype:

In [11]:
df['Percent'] = df['Grade'].astype(str) + '%'
df

Out[11]:
   Grade     Name Percent
0     82    jimmy     82%
1     38      red     38%
2     55    julie     55%
3     19     brad     19%
4     33  oranges     33%

What you tried just converted the column to a stringified version of a Series:

In [12]:
str(df['Grade'])

Out[12]:
'0    82\n1    38\n2    55\n3    19\n4    33\nName: Grade, dtype: int32'