@@ -2121,9 +2121,11 @@ def info(self, verbose=None, buf=None, max_cols=None, memory_usage=None,
21212121 <class 'pandas.core.frame.DataFrame'>
21222122 RangeIndex: 5 entries, 0 to 4
21232123 Data columns (total 3 columns):
2124- int_col 5 non-null int64
2125- text_col 5 non-null object
2126- float_col 5 non-null float64
2124+ #. Column Non-Null Count
2125+ --- ------ --------------
2126+ 0 int_col 5 non-null int64
2127+ 1 text_col 5 non-null object
2128+ 2 float_col 5 non-null float64
21272129 dtypes: float64(1), int64(1), object(1)
21282130 memory usage: 200.0+ bytes
21292131
@@ -2161,19 +2163,23 @@ def info(self, verbose=None, buf=None, max_cols=None, memory_usage=None,
21612163 <class 'pandas.core.frame.DataFrame'>
21622164 RangeIndex: 1000000 entries, 0 to 999999
21632165 Data columns (total 3 columns):
2164- column_1 1000000 non-null object
2165- column_2 1000000 non-null object
2166- column_3 1000000 non-null object
2166+ #. Column Non-Null Count
2167+ --- ------ --------------
2168+ 0 column_1 1000000 non-null object
2169+ 1 column_2 1000000 non-null object
2170+ 2 column_3 1000000 non-null object
21672171 dtypes: object(3)
21682172 memory usage: 22.9+ MB
21692173
21702174 >>> df.info(memory_usage='deep')
21712175 <class 'pandas.core.frame.DataFrame'>
21722176 RangeIndex: 1000000 entries, 0 to 999999
21732177 Data columns (total 3 columns):
2174- column_1 1000000 non-null object
2175- column_2 1000000 non-null object
2176- column_3 1000000 non-null object
2178+ #. Column Non-Null Count
2179+ --- ------ --------------
2180+ 0 column_1 1000000 non-null object
2181+ 1 column_2 1000000 non-null object
2182+ 2 column_3 1000000 non-null object
21772183 dtypes: object(3)
21782184 memory usage: 188.8 MB
21792185 """
@@ -2210,25 +2216,33 @@ def info(self, verbose=None, buf=None, max_cols=None, memory_usage=None,
22102216 def _verbose_repr ():
22112217 lines .append ('Data columns (total '
22122218 '{count} columns):' .format (count = cols_count ))
2213- space = max ([len (pprint_thing (k )) for k in cols ])
2214- space = max (space , len (pprint_thing ('Column' ))) + 4
2219+ space = max (len (pprint_thing (k )) for k in cols )
2220+ len_column = len (pprint_thing ('Column' ))
2221+ space = max (space , len_column ) + 4
22152222 space_num = len (pprint_thing (cols_count ))
2216- space_num = max (space_num , len (pprint_thing ('Index' ))) + 2
2223+ len_id = len (pprint_thing (' #.' ))
2224+ space_num = max (space_num , len_id ) + 2
22172225 counts = None
22182226
2219- header = _put_str ('Index' , space_num ) + _put_str ('Column' , space )
2220- tmpl = '{count}{dtype}'
2227+ header = _put_str (' #.' , space_num ) + _put_str ('Column' , space )
22212228 if show_counts :
22222229 counts = self .count ()
22232230 if len (cols ) != len (counts ): # pragma: no cover
22242231 raise AssertionError (
22252232 'Columns must equal counts '
22262233 '({cols_count} != {count})' .format (
22272234 cols_count = cols_count , count = len (counts )))
2228- header + = 'Non-Null Count'
2235+ col_header = 'Non-Null Count'
22292236 tmpl = '{count} non-null {dtype}'
2237+ else :
2238+ col_header = 'dtype'
2239+ tmpl = '{count}{dtype}'
2240+ header += col_header
22302241
22312242 lines .append (header )
2243+ lines .append (_put_str ('-' * len_id , space_num ) +
2244+ _put_str ('-' * len_column , space ) +
2245+ '-' * len (pprint_thing (col_header )))
22322246 dtypes = self .dtypes
22332247 for i , col in enumerate (cols ):
22342248 dtype = dtypes .iloc [i ]
0 commit comments