How to make dataframe in pandas as numeric?
It seems that you have a list of int in your data frame. To convert it to you need to select the value inside and form data frame.
I suggest you this code to convert

for col in df:
     df[col] = df[col].apply(lambda x: x[0])
I am learning the book Python for Data Analysis, after running the code from the book I got a pandas dataframe diversity like this:

sex  F  M
year 
1880 [38] [14]
1881 [38] [14]

When I want to use diversity.plot() to draw some pictures, there is TypeError: 
Empty 'DataFrame': no numeric data to plot 
So, my question is how to deal with this dataframe to make it as numeric?