text_html_output_1.png
import numpy as np # linear algebra

import pandas as pd # data processing, CSV file I/O (e.g. pd.read_csv)

df = pd.DataFrame(np.array([['Species 1', np.nan, np.nan, np.nan], ['Species 1', 'Ocotber 2011', np.nan, np.nan], ['Species 1', np.nan, np.nan, 'Decmber 2011'], ['Species 2', 'Ocotber 2011', np.nan, np.nan], ['Species 2', np.nan, 'November 2011', np.nan], ['Species 2', np.nan, np.nan, 'Decmber 2011'], ['Species 3', 'Ocotber 2011', np.nan, np.nan], ['Species 3', np.nan, 'Novermber 2011', np.nan]]), columns=['Species', 'Oct-11', 'Nov-11', 'Dec-11'])
df

agg_funcs = {}
for col in df.columns:
    agg_funcs[col] = 'min'
agg_funcs
df.groupby(['Species'], as_index=False).agg(agg_funcs)