run analysis function and dataframe result