You can call the str
method and apply a slice, this will be much quicker than the other method as this is vectorised (thanks @unutbu):
df['New_Sample'] = df.Sample.str[:1]
You can also call a lambda function on the df but this will be slower on larger dataframes:
In [187]:
df['New_Sample'] = df.Sample.apply(lambda x: x[:1])
df
Out[187]:
Sample Value New_Sample
0 AAB 23 A
1 BAB 25 B