Skip to content

Commit 15b39e1

Browse files
modify logic and change docstring
1 parent 45239a1 commit 15b39e1

File tree

3 files changed

+8
-6
lines changed

3 files changed

+8
-6
lines changed

pandas/core/generic.py

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -2910,9 +2910,11 @@ def to_csv(self, path_or_buf=None, sep=",", na_rep='', float_format=None,
29102910
29112911
index : bool, default True
29122912
Write row names (index).
2913-
index_label : str or sequence, or False, default None
2913+
index_label : False or str or sequence, default None
29142914
Column label for index column(s) if desired. If None is given, and
2915-
`header` and `index` are True, then the index names are used. A
2915+
`header` and `index` are True, then the index names are used. If
2916+
`header` is False or None, default index_label changes to False,
2917+
neither header nor index names will be printed. A
29162918
sequence should be given if the object uses MultiIndex. If
29172919
False do not print fields for index names. Use index_label=False
29182920
for easier importing in R.

pandas/io/formats/csvs.py

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -53,8 +53,8 @@ def __init__(self, obj, path_or_buf=None, sep=",", na_rep='',
5353
self.index_label = index_label
5454
# set defualt index label to False if header is False and
5555
# index_label is not None or False.
56-
if not self.header:
57-
if not self.index_label:
56+
if self.header is None or self.header is False:
57+
if self.index_label is None:
5858
self.index_label = False
5959
self.mode = mode
6060
if encoding is None:

pandas/tests/generic/test_frame.py

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -274,7 +274,7 @@ def test_deepcopy_empty(self):
274274
@pytest.mark.skipif(os.name == 'nt',
275275
reason="Windows use \r\n for newline")
276276
@pytest.mark.parametrize("header, index_label, expected", [
277-
(False, None, 'index.name,,\n0,0,0\n1,0,0\n'),
277+
(False, None, '0,0,0\n1,0,0\n'),
278278
(True, None, 'index.name,0,1\n0,0,0\n1,0,0\n'),
279279
(False, False, '0,0,0\n1,0,0\n'),
280280
(True, False, ',0,1\n0,0,0\n1,0,0\n')
@@ -290,7 +290,7 @@ def test_to_csv_header_single_index(self, header, index_label, expected):
290290
@pytest.mark.skipif(os.name == 'nt',
291291
reason="Windows use \r\n for newline")
292292
@pytest.mark.parametrize("header, index_label, expected", [
293-
(False, None, 'index.name.0,index.name.1,,\na,b,0,0\na,c,0,0\n'),
293+
(False, None, 'a,b,0,0\na,c,0,0\n'),
294294
(True, None, 'index.name.0,index.name.1,0,1\na,b,0,0\na,c,0,0\n'),
295295
(False, False, 'a,b,0,0\na,c,0,0\n'),
296296
(True, False, ',,0,1\na,b,0,0\na,c,0,0\n')

0 commit comments

Comments
 (0)