diff options
Diffstat (limited to 'doc/source/reference/random/performance.py')
-rw-r--r-- | doc/source/reference/random/performance.py | 17 |
1 files changed, 15 insertions, 2 deletions
diff --git a/doc/source/reference/random/performance.py b/doc/source/reference/random/performance.py index ed8745078..28a42eb0d 100644 --- a/doc/source/reference/random/performance.py +++ b/doc/source/reference/random/performance.py @@ -54,15 +54,16 @@ for key in npfuncs: col[key] = 1000 * min(t) table['RandomState'] = pd.Series(col) +columns = ['MT19937','PCG64','Philox','SFC64', 'RandomState'] table = pd.DataFrame(table) -table = table.reindex(table.mean(1).sort_values().index) order = np.log(table).mean().sort_values().index table = table.T -table = table.reindex(order) +table = table.reindex(columns) table = table.T table = table.reindex([k for k in funcs], axis=0) print(table.to_csv(float_format='%0.1f')) + rel = table.loc[:, ['RandomState']].values @ np.ones( (1, table.shape[1])) / table rel.pop('RandomState') @@ -72,3 +73,15 @@ rel *= 100 rel = np.round(rel) rel = rel.T print(rel.to_csv(float_format='%0d')) + +# Cross-platform table +rows = ['32-bit Unsigned Ints','64-bit Unsigned Ints','Uniforms','Normals','Exponentials'] +xplat = rel.reindex(rows, axis=0) +xplat = 100 * (xplat / xplat.MT19937.values[:,None]) +overall = np.exp(np.log(xplat).mean(0)) +xplat = xplat.T.copy() +xplat['Overall']=overall +print(xplat.T.round(1)) + + + |