DataFrame.to_string(buf: Optional[IO[str]] = None, columns: Optional[Sequence[Union[Any, Tuple[Any, …]]]] = None, col_space: Union[str, int, Dict[Union[Any, Tuple[Any, …]], Union[str, int]], None] = None, header: bool = True, index: bool = True, na_rep: str = 'NaN', formatters: Union[List[Callable[[Any], str]], Dict[Union[Any, Tuple[Any, …]], Callable[[Any], str]], None] = None, float_format: Optional[Callable[[float], str]] = None, sparsify: Optional[bool] = None, index_names: bool = True, justify: Optional[str] = None, max_rows: Optional[int] = None, max_cols: Optional[int] = None, show_dimensions: bool = False, decimal: str = '.', line_width: Optional[int] = None) → Optional[str][source]

Render a DataFrame to a console-friendly tabular output.


This method should only be used if the resulting pandas object is expected to be small, as all the data is loaded into the driver’s memory. If the input is large, set max_rows parameter.

bufStringIO-like, optional

Buffer to write to.

columnssequence, optional, default None

The subset of columns to write. Writes all columns by default.

col_spaceint, optional

The minimum width of each column.

headerbool, optional

Write out the column names. If a list of strings is given, it is assumed to be aliases for the column names

indexbool, optional, default True

Whether to print index (row) labels.

na_repstr, optional, default ‘NaN’

String representation of NAN to use.

formatterslist or dict of one-param. functions, optional

Formatter functions to apply to columns’ elements by position or name. The result of each function must be a unicode string. List must be of length equal to the number of columns.

float_formatone-parameter function, optional, default None

Formatter function to apply to columns’ elements if they are floats. The result of this function must be a unicode string.

sparsifybool, optional, default True

Set to False for a DataFrame with a hierarchical index to print every multiindex key at each row.

index_namesbool, optional, default True

Prints the names of the indexes.

justifystr, default None

How to justify the column labels. If None uses the option from the print configuration (controlled by set_option), ‘right’ out of the box. Valid values are

  • left

  • right

  • center

  • justify

  • justify-all

  • start

  • end

  • inherit

  • match-parent

  • initial

  • unset.

max_rowsint, optional

Maximum number of rows to display in the console.

max_colsint, optional

Maximum number of columns to display in the console.

show_dimensionsbool, default False

Display DataFrame dimensions (number of rows by number of columns).

decimalstr, default ‘.’

Character recognized as decimal separator, e.g. ‘,’ in Europe.

line_widthint, optional

Width to wrap a line in characters.

str (or unicode, depending on data and options)

String representation of the dataframe.

See also


Convert DataFrame to HTML.


>>> df = ps.DataFrame({'col1': [1, 2, 3], 'col2': [4, 5, 6]}, columns=['col1', 'col2'])
>>> print(df.to_string())
   col1  col2
0     1     4
1     2     5
2     3     6
>>> print(df.to_string(max_rows=2))
   col1  col2
0     1     4
1     2     5