Skip to content

DOC: Consistent variable names (sheetname vs sheet_name, issue 10559) #10969

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Closed
wants to merge 1 commit into from
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion doc/source/10min.rst
Original file line number Diff line number Diff line change
Expand Up @@ -774,7 +774,7 @@ Writing to an excel file

.. ipython:: python

df.to_excel('foo.xlsx', sheet_name='Sheet1')
df.to_excel('foo.xlsx', sheetname='Sheet1')

Reading from an excel file

Expand Down
16 changes: 8 additions & 8 deletions doc/source/io.rst
Original file line number Diff line number Diff line change
Expand Up @@ -2012,9 +2012,9 @@ Specifying Sheets

.. _io.specifying_sheets:

.. note :: The second argument is ``sheetname``, not to be confused with ``ExcelFile.sheet_names``
.. note :: The second argument is ``sheetname``, not to be confused with ``ExcelFile.sheetnames``

.. note :: An ExcelFile's attribute ``sheet_names`` provides access to a list of sheets.
.. note :: An ExcelFile's attribute ``sheetnames`` provides access to a list of sheets.

- The arguments ``sheetname`` allows specifying the sheet or sheets to read.
- The default value for ``sheetname`` is 0, indicating to read the first sheet
Expand Down Expand Up @@ -2111,7 +2111,7 @@ written. For example:

.. code-block:: python

df.to_excel('path_to_file.xlsx', sheet_name='Sheet1')
df.to_excel('path_to_file.xlsx', sheetname='Sheet1')

Files with a ``.xls`` extension will be written using ``xlwt`` and those with a
``.xlsx`` extension will be written using ``xlsxwriter`` (if available) or
Expand All @@ -2135,8 +2135,8 @@ one can pass an :class:`~pandas.io.excel.ExcelWriter`.
.. code-block:: python

with ExcelWriter('path_to_file.xlsx') as writer:
df1.to_excel(writer, sheet_name='Sheet1')
df2.to_excel(writer, sheet_name='Sheet2')
df1.to_excel(writer, sheetname='Sheet1')
df2.to_excel(writer, sheetname='Sheet2')

.. note::

Expand Down Expand Up @@ -2181,7 +2181,7 @@ argument to ``to_excel`` and to ``ExcelWriter``. The built-in engines are:
.. code-block:: python

# By setting the 'engine' in the DataFrame and Panel 'to_excel()' methods.
df.to_excel('path_to_file.xlsx', sheet_name='Sheet1', engine='xlsxwriter')
df.to_excel('path_to_file.xlsx', sheetname='Sheet1', engine='xlsxwriter')

# By setting the 'engine' in the ExcelWriter constructor.
writer = ExcelWriter('path_to_file.xlsx', engine='xlsxwriter')
Expand All @@ -2190,7 +2190,7 @@ argument to ``to_excel`` and to ``ExcelWriter``. The built-in engines are:
from pandas import options
options.io.excel.xlsx.writer = 'xlsxwriter'

df.to_excel('path_to_file.xlsx', sheet_name='Sheet1')
df.to_excel('path_to_file.xlsx', sheetname='Sheet1')

.. _io.excel_writing_buffer:

Expand All @@ -2214,7 +2214,7 @@ Pandas supports writing Excel files to buffer-like objects such as ``StringIO``

# By setting the 'engine' in the ExcelWriter constructor.
writer = ExcelWriter(bio, engine='xlsxwriter')
df.to_excel(writer, sheet_name='Sheet1')
df.to_excel(writer, sheetname='Sheet1')

# Save the workbook
writer.save()
Expand Down
6 changes: 3 additions & 3 deletions pandas/core/frame.py
Original file line number Diff line number Diff line change
Expand Up @@ -1269,7 +1269,7 @@ def to_csv(self, path_or_buf=None, sep=",", na_rep='', float_format=None,
if path_or_buf is None:
return formatter.path_or_buf.getvalue()

def to_excel(self, excel_writer, sheet_name='Sheet1', na_rep='',
def to_excel(self, excel_writer, sheetname='Sheet1', na_rep='',
float_format=None, columns=None, header=True, index=True,
index_label=None, startrow=0, startcol=0, engine=None,
merge_cells=True, encoding=None, inf_rep='inf',
Expand All @@ -1281,7 +1281,7 @@ def to_excel(self, excel_writer, sheet_name='Sheet1', na_rep='',
----------
excel_writer : string or ExcelWriter object
File path or existing ExcelWriter
sheet_name : string, default 'Sheet1'
sheetname : string, default 'Sheet1'
Name of sheet which will contain DataFrame
na_rep : string, default ''
Missing data representation
Expand Down Expand Up @@ -1351,7 +1351,7 @@ def to_excel(self, excel_writer, sheet_name='Sheet1', na_rep='',
merge_cells=merge_cells,
inf_rep=inf_rep, verbose=verbose)
formatted_cells = formatter.get_formatted_cells()
excel_writer.write_cells(formatted_cells, sheet_name,
excel_writer.write_cells(formatted_cells, sheetname,
startrow=startrow, startcol=startcol)
if need_save:
excel_writer.save()
Expand Down
72 changes: 36 additions & 36 deletions pandas/io/excel.py
Original file line number Diff line number Diff line change
Expand Up @@ -382,7 +382,7 @@ def _parse_cell(cell_contents,cell_typ):
sheets = sheetname
ret_dict = True
elif sheetname is None:
sheets = self.sheet_names
sheets = self.sheetnames
ret_dict = True
else:
sheets = [sheetname]
Expand Down Expand Up @@ -441,8 +441,8 @@ def _parse_cell(cell_contents,cell_typ):


@property
def sheet_names(self):
return self.book.sheet_names()
def sheetnames(self):
return self.book.sheetnames()

def close(self):
"""close io if necessary"""
Expand Down Expand Up @@ -508,7 +508,7 @@ class ExcelWriter(object):
# Defining an ExcelWriter implementation (see abstract methods for more...)

# - Mandatory
# - ``write_cells(self, cells, sheet_name=None, startrow=0, startcol=0)``
# - ``write_cells(self, cells, sheetname=None, startrow=0, startcol=0)``
# --> called to write additional DataFrames to disk
# - ``supported_extensions`` (tuple of supported extensions), used to
# check that engine supports the given extension.
Expand Down Expand Up @@ -560,15 +560,15 @@ def engine(self):
pass

@abc.abstractmethod
def write_cells(self, cells, sheet_name=None, startrow=0, startcol=0):
def write_cells(self, cells, sheetname=None, startrow=0, startcol=0):
"""
Write given formated cells into Excel an excel sheet

Parameters
----------
cells : generator
cell of formated data to save to Excel sheet
sheet_name : string, default None
sheetname : string, default None
Name of Excel sheet, if None, then use self.cur_sheet
startrow: upper left cell row to dump data frame
startcol: upper left cell column to dump data frame
Expand Down Expand Up @@ -605,13 +605,13 @@ def __init__(self, path, engine=None,
else:
self.datetime_format = datetime_format

def _get_sheet_name(self, sheet_name):
if sheet_name is None:
sheet_name = self.cur_sheet
if sheet_name is None: # pragma: no cover
raise ValueError('Must pass explicit sheet_name or set '
def _get_sheetname(self, sheetname):
if sheetname is None:
sheetname = self.cur_sheet
if sheetname is None: # pragma: no cover
raise ValueError('Must pass explicit sheetname or set '
'cur_sheet property')
return sheet_name
return sheetname

@classmethod
def check_extension(cls, ext):
Expand Down Expand Up @@ -665,18 +665,18 @@ def save(self):
"""
return self.book.save(self.path)

def write_cells(self, cells, sheet_name=None, startrow=0, startcol=0):
def write_cells(self, cells, sheetname=None, startrow=0, startcol=0):
# Write the frame cells using openpyxl.
from openpyxl.cell import get_column_letter

sheet_name = self._get_sheet_name(sheet_name)
sheetname = self._get_sheetname(sheetname)

if sheet_name in self.sheets:
wks = self.sheets[sheet_name]
if sheetname in self.sheets:
wks = self.sheets[sheetname]
else:
wks = self.book.create_sheet()
wks.title = sheet_name
self.sheets[sheet_name] = wks
wks.title = sheetname
self.sheets[sheetname] = wks

for cell in cells:
colletter = get_column_letter(startcol + cell.col + 1)
Expand Down Expand Up @@ -759,18 +759,18 @@ class _Openpyxl2Writer(_Openpyxl1Writer):
engine = 'openpyxl2'
openpyxl_majorver = 2

def write_cells(self, cells, sheet_name=None, startrow=0, startcol=0):
def write_cells(self, cells, sheetname=None, startrow=0, startcol=0):
# Write the frame cells using openpyxl.
from openpyxl.cell import get_column_letter

sheet_name = self._get_sheet_name(sheet_name)
sheetname = self._get_sheetname(sheetname)

if sheet_name in self.sheets:
wks = self.sheets[sheet_name]
if sheetname in self.sheets:
wks = self.sheets[sheetname]
else:
wks = self.book.create_sheet()
wks.title = sheet_name
self.sheets[sheet_name] = wks
wks.title = sheetname
self.sheets[sheetname] = wks

for cell in cells:
colletter = get_column_letter(startcol + cell.col + 1)
Expand Down Expand Up @@ -1189,16 +1189,16 @@ def save(self):
"""
return self.book.save(self.path)

def write_cells(self, cells, sheet_name=None, startrow=0, startcol=0):
def write_cells(self, cells, sheetname=None, startrow=0, startcol=0):
# Write the frame cells using xlwt.

sheet_name = self._get_sheet_name(sheet_name)
sheetname = self._get_sheetname(sheetname)

if sheet_name in self.sheets:
wks = self.sheets[sheet_name]
if sheetname in self.sheets:
wks = self.sheets[sheetname]
else:
wks = self.book.add_sheet(sheet_name)
self.sheets[sheet_name] = wks
wks = self.book.add_sheet(sheetname)
self.sheets[sheetname] = wks

style_dict = {}

Expand Down Expand Up @@ -1312,16 +1312,16 @@ def save(self):
"""
return self.book.close()

def write_cells(self, cells, sheet_name=None, startrow=0, startcol=0):
def write_cells(self, cells, sheetname=None, startrow=0, startcol=0):
# Write the frame cells using xlsxwriter.

sheet_name = self._get_sheet_name(sheet_name)
sheetname = self._get_sheetname(sheetname)

if sheet_name in self.sheets:
wks = self.sheets[sheet_name]
if sheetname in self.sheets:
wks = self.sheets[sheetname]
else:
wks = self.book.add_worksheet(sheet_name)
self.sheets[sheet_name] = wks
wks = self.book.add_worksheet(sheetname)
self.sheets[sheetname] = wks

style_dict = {}

Expand Down
26 changes: 13 additions & 13 deletions pandas/io/tests/test_excel.py
Original file line number Diff line number Diff line change
Expand Up @@ -743,9 +743,9 @@ def test_sheets(self):
tm.assert_frame_equal(self.frame, recons)
recons = reader.parse('test2', index_col=0)
tm.assert_frame_equal(self.tsframe, recons)
np.testing.assert_equal(2, len(reader.sheet_names))
np.testing.assert_equal('test1', reader.sheet_names[0])
np.testing.assert_equal('test2', reader.sheet_names[1])
np.testing.assert_equal(2, len(reader.sheetnames))
np.testing.assert_equal('test1', reader.sheetnames[0])
np.testing.assert_equal('test2', reader.sheetnames[1])

def test_colaliases(self):
_skip_if_no_xlrd()
Expand Down Expand Up @@ -842,7 +842,7 @@ def test_excel_roundtrip_indexname(self):
df.to_excel(path, merge_cells=self.merge_cells)

xf = ExcelFile(path)
result = xf.parse(xf.sheet_names[0],
result = xf.parse(xf.sheetnames[0],
index_col=0,
has_index_names=self.merge_cells)

Expand Down Expand Up @@ -1006,7 +1006,7 @@ def test_to_excel_output_encoding(self):
index=[u('A\u0192'), 'B'], columns=[u('X\u0193'), 'Y', 'Z'])

with ensure_clean(filename) as filename:
df.to_excel(filename, sheet_name='TestSheet', encoding='utf8')
df.to_excel(filename, sheetname='TestSheet', encoding='utf8')
result = read_excel(filename, 'TestSheet', encoding='utf8')
tm.assert_frame_equal(result, df)

Expand Down Expand Up @@ -1065,7 +1065,7 @@ def test_to_excel_unicode_filename(self):

# wbk = xlrd.open_workbook(filename,
# formatting_info=True)
# self.assertEqual(["test1"], wbk.sheet_names())
# self.assertEqual(["test1"], wbk.sheetnames())
# ws = wbk.sheet_by_name('test1')
# self.assertEqual([(0, 1, 5, 7), (0, 1, 3, 5), (0, 1, 1, 3)],
# ws.merged_cells)
Expand Down Expand Up @@ -1111,7 +1111,7 @@ def test_to_excel_unicode_filename(self):
# filename = '__tmp_to_excel_header_styling_xlsx__.xlsx'
# pdf.to_excel(filename, 'test1')
# wbk = openpyxl.load_workbook(filename)
# self.assertEqual(["test1"], wbk.get_sheet_names())
# self.assertEqual(["test1"], wbk.get_sheetnames())
# ws = wbk.get_sheet_by_name('test1')
# xlsaddrs = ["%s2" % chr(i) for i in range(ord('A'), ord('H'))]
# xlsaddrs += ["A%s" % i for i in range(1, 6)]
Expand Down Expand Up @@ -1149,7 +1149,7 @@ def roundtrip(df, header=True, parser_hdr=0, index=True):
with ensure_clean(self.ext) as path:
df.to_excel(path, header=header, merge_cells=self.merge_cells, index=index)
xf = pd.ExcelFile(path)
res = xf.parse(xf.sheet_names[0], header=parser_hdr)
res = xf.parse(xf.sheetnames[0], header=parser_hdr)
return res

nrows = 5
Expand Down Expand Up @@ -1203,7 +1203,7 @@ def roundtrip2(df, header=True, parser_hdr=0, index=True):
with ensure_clean(self.ext) as path:
df.to_excel(path, header=header, merge_cells=self.merge_cells, index=index)
xf = pd.ExcelFile(path)
res = xf.parse(xf.sheet_names[0], header=parser_hdr)
res = xf.parse(xf.sheetnames[0], header=parser_hdr)
return res

nrows = 5; ncols = 3
Expand Down Expand Up @@ -1430,7 +1430,7 @@ def test_write_cells_merge_styled(self):
from pandas.core.format import ExcelCell
from openpyxl import styles

sheet_name='merge_styled'
sheetname='merge_styled'

sty_b1 = {'font': {'color': '00FF0000'}}
sty_a2 = {'font': {'color': '0000FF00'}}
Expand All @@ -1450,10 +1450,10 @@ def test_write_cells_merge_styled(self):

with ensure_clean('.xlsx') as path:
writer = _Openpyxl2Writer(path)
writer.write_cells(initial_cells, sheet_name=sheet_name)
writer.write_cells(merge_cells, sheet_name=sheet_name)
writer.write_cells(initial_cells, sheetname=sheetname)
writer.write_cells(merge_cells, sheetname=sheetname)

wks = writer.sheets[sheet_name]
wks = writer.sheets[sheetname]
xcell_b1 = wks.cell('B1')
xcell_a2 = wks.cell('A2')
self.assertEqual(xcell_b1.style, openpyxl_sty_merged)
Expand Down