Why does pandas Round method explodes my data frame?
I try to round all values in this [dataframe][1]. However, the pandas [round() method][2] explodes my dataframe from 150 rows to 7518 rows.

Perhaps there is something odd with the data in the dataframe, but then again, one would not expect a simple rounding function to do this.

Below, I replicate the error using 1) simulated data and 2) the [data][1] that leads to the said error.

**This** results in 150 rows, which is the correct number:

    import pandas as pd
    import numpy as np
    df = pd.DataFrame(np.random.random([150, 4]), columns=['A', 'B', 'C', 'D'])
    df["cat"] = "MID"
    df.loc[:399,["cat"]] = "LOW"
    df.iloc[-400:,-1] = "HI"
    df.cat.value_counts()
    df.set_index("cat", inplace=True)
    df.round(3) 

Using the data from my dropbox folder, the round-function produces a whopping 7518 rows:

    dfb = pd.read_pickle('dfna.pkl')
    dfb.round(3)

This is strange. I solved it for now using this rather ugly line:

    dfb = dfb.reset_index().round({'A': 1, 'B': 2, 'C': 3, 'D': 4}).set_index('tricile')

However, this is not ideal, given that pandas' round method acts in mysterious ways and may affect future programs.

  [1]: https://www.dropbox.com/s/adl22tvse2bicsq/dfna.pkl?dl=0
  [2]: https://pandas.pydata.org/pandas-docs/stable/generated/pandas.DataFrame.round.html