I\'m having trouble applying upper case to a column in my DataFrame.
dataframe is df
.
1/2 ID
is the column head that need to apply
If your version of pandas is a recent version then you can just use the vectorised string method upper:
df['1/2 ID'] = df['1/2 ID'].str.upper()
This method does not work inplace, so the result must be assigned back.
str.upper()
wants a plain old Python 2 string
unicode.upper()
will want a unicode not a string (or you get TypeError: descriptor 'upper' requires a 'unicode' object but received a 'str')
So I'd suggest making use of duck typing and call .upper()
on each of your elements, e.g.
df['1/2 ID'].apply(lambda x: x.upper(), inplace=True)
This should work:
df['1/2 ID'] = map(lambda x: str(x).upper(), df['1/2 ID'])
and should you want all the columns
names to be in uppercase format:
df.columns = map(lambda x: str(x).upper(), df.columns)