def get_global_stats(df):
    """Compute the metadata statistics of a given DataFrame and put them in a 2D list."""
    
    stats = []
    stats.append(["Number of rows", df.shape[0] ])
    stats.append(["Number of columns", df.shape[1] ])
    stats.append(["Number of duplicates", len(df) - len(df.drop_duplicates())])
    stats.append(["Number of rows with NaN values", df.isnull().values.ravel().sum() ])
    stats.append(["Header", [col for col in df.columns] ])
    stats.append(["Data Types", [dtyp.name for dtyp in df.dtypes.values] ])
    return stats