DOC: Make section title capitalization consistent #26830
- [x] closes #26830
Adjusted titles in Docs to have consistent first letter only capitalization, unless proper noun in title.

# [Codecov](https://codecov.io/gh/pandas-dev/pandas/pull/26933?src=pr&el=h1) Report
> Merging [#26933](https://codecov.io/gh/pandas-dev/pandas/pull/26933?src=pr&el=desc) into [master](https://codecov.io/gh/pandas-dev/pandas/commit/d39a6de66803b2a13d6bbb8aa98c56e90f95526c?src=pr&el=desc) will **decrease** coverage by `<.01%`.
> The diff coverage is `n/a`.

[![Impacted file tree graph](https://codecov.io/gh/pandas-dev/pandas/pull/26933/graphs/tree.svg?width=650&token=eZ4WkYLtcO&height=150&src=pr)](https://codecov.io/gh/pandas-dev/pandas/pull/26933?src=pr&el=tree)

```diff
@@            Coverage Diff             @@
##           master   #26933      +/-   ##
==========================================
- Coverage   91.87%   91.86%   -0.01%     
==========================================
  Files         180      180              
  Lines       50716    50716              
==========================================
- Hits        46593    46590       -3     
- Misses       4123     4126       +3
```

| Flag | Coverage Δ | |
|---|---|---|
| #multiple | `90.45% <ø> (ø)` | :arrow_up: |
| #single | `41.12% <ø> (-0.07%)` | :arrow_down: |

| [Impacted Files](https://codecov.io/gh/pandas-dev/pandas/pull/26933?src=pr&el=tree) | Coverage Δ | |
|---|---|---|
| [pandas/io/gbq.py](https://codecov.io/gh/pandas-dev/pandas/pull/26933/diff?src=pr&el=tree#diff-cGFuZGFzL2lvL2dicS5weQ==) | `88.88% <0%> (-11.12%)` | :arrow_down: |
| [pandas/core/frame.py](https://codecov.io/gh/pandas-dev/pandas/pull/26933/diff?src=pr&el=tree#diff-cGFuZGFzL2NvcmUvZnJhbWUucHk=) | `96.88% <0%> (-0.12%)` | :arrow_down: |
| [pandas/util/testing.py](https://codecov.io/gh/pandas-dev/pandas/pull/26933/diff?src=pr&el=tree#diff-cGFuZGFzL3V0aWwvdGVzdGluZy5weQ==) | `90.94% <0%> (+0.1%)` | :arrow_up: |

------

[Continue to review full report at Codecov](https://codecov.io/gh/pandas-dev/pandas/pull/26933?src=pr&el=continue).
> **Legend** - [Click here to learn more](https://docs.codecov.io/docs/codecov-delta)
> `Δ = absolute <relative> (impact)`, `ø = not affected`, `? = missing data`
> Powered by [Codecov](https://codecov.io/gh/pandas-dev/pandas/pull/26933?src=pr&el=footer). Last update [d39a6de...217c67e](https://codecov.io/gh/pandas-dev/pandas/pull/26933?src=pr&el=lastupdated). Read the [comment docs](https://docs.codecov.io/docs/pull-request-comments).
 @datapythonista @jorisvandenbossche I see your discussion, but do we really want this to apply to *all* headers; what is the theory here? I think I went too literal on all the headers.  I will cancel this PR. @jreback Let's then have the discussion on the issue. Can you comment there what logic you would follow on which headers to apply and which not? (our theory: consistency for all headers)

> I think I went too literal on all the headers. I will cancel this PR.

@pmaxey83 no, no, you did what was described in the issue. It's just that we don't yet fully agree about that. You will need to have some patience. Oh, I am sorry. I thought I did the change incorrectly.

On Tue, Jun 18, 2019, 10:28 PM Joris Van den Bossche <
notifications@github.com> wrote:

> @jreback <https://github.com/jreback> Let's then have the discussion on
> the issue. Can you comment there what logic you would follow on which
> headers to apply and which not? (our theory: consistency for all headers)
>
> I think I went too literal on all the headers. I will cancel this PR.
>
> @pmaxey83 <https://github.com/pmaxey83> no, no, you did what was
> described in the issue. It's just that we don't yet fully agree about that.
> You will need to have some patience.
>
> —
> You are receiving this because you were mentioned.
> Reply to this email directly, view it on GitHub
> <https://github.com/pandas-dev/pandas/pull/26933?email_source=notifications&email_token=AFA5BYKTAIC27F575U3Y663P3G7Y5A5CNFSM4HZERZ5KYY3PNVWWK3TUL52HS4DFVREXG43VMVBW63LNMVXHJKTDN5WW2ZLOORPWSZGODYAXJEY#issuecomment-503411859>,
> or mute the thread
> <https://github.com/notifications/unsubscribe-auth/AFA5BYILAJFSUWGWT2H6GJ3P3G7Y5ANCNFSM4HZERZ5A>
> .
>
 As I said, no need to be sorry. As you did what was described correctly. There is only not yet a full agreement on what was described there. @pmaxey83 Can you reopen the pull request, or restore your branch? (depending on the outcome of the discussion, those changes are useful) Thanks @pmaxey83, great job here. Sorry it's been my fault that I assumed the discussion in this issue was finished too early. Also, I wasn't clear, but my idea was to start only with the title sections visible in the home page, and take care of the rest later.

As @jorisvandenbossche said, please restore your remote branch, there is a lot of great work there I hope we want to get into the docs. @pmaxey83 yeah didn't mean for you to close this, I had already commented when I actually read the issue :-> Once I'm home from work, I will adjust the keywords.

Thank you.

On Wed, Jun 19, 2019, 5:59 AM Marc Garcia <notifications@github.com> wrote:

> *@datapythonista* commented on this pull request.
>
> Amazing clean up @pmaxey83 <https://github.com/pmaxey83>, thanks a lot
> for the effort.
>
> We're moving forward with this, just few cases that should be changed
> (mainly class names that we want to keep with the first letter
> capitalized), and we're ready to merge.
> ------------------------------
>
> In doc/source/getting_started/basics.rst
> <https://github.com/pandas-dev/pandas/pull/26933#discussion_r295271766>:
>
> > @@ -643,7 +643,7 @@ there for details about accepted inputs.
>
>  .. _basics.idxmin:
>
> -Index of Min/Max Values
> +Index of min/max Values
>
> Values also
> ------------------------------
>
> In doc/source/user_guide/categorical.rst
> <https://github.com/pandas-dev/pandas/pull/26933#discussion_r295273280>:
>
> > @@ -1191,7 +1191,7 @@ change the original ``Categorical``:
>      df["cat"].cat.categories = [1, 2, 3, 4, 5]
>      cat
>
> -Use ``copy=True`` to prevent such a behaviour or simply don't reuse ``Categoricals``:
> +Use ``copy=True`` to prevent such a behavior or simply don't reuse ``Categoricals``:
>
> haha, you're starting a British vs American English war here, but good
> catch ;)
> ------------------------------
>
> In doc/source/user_guide/enhancingperf.rst
> <https://github.com/pandas-dev/pandas/pull/26933#discussion_r295273763>:
>
> > @@ -15,7 +15,7 @@ when we use Cython and Numba on a test function operating row-wise on the
>
>  .. _enhancingperf.cython:
>
> -Cython (Writing C extensions for pandas)
> +Cython (writing C extensions for Pandas)
>
> We use pandas lowercase, as a trademark, can you restore this one please
> ------------------------------
>
> In doc/source/user_guide/gotchas.rst
> <https://github.com/pandas-dev/pandas/pull/26933#discussion_r295273905>:
>
> > @@ -75,10 +75,10 @@ See also :ref:`Categorical Memory Usage <categorical.memory>`.
>
>  .. _gotchas.truth:
>
> -Using If/Truth Statements with pandas
> +Using if/truth statements with Pandas
>
> same regarding pandas
> ------------------------------
>
> In doc/source/user_guide/gotchas.rst
> <https://github.com/pandas-dev/pandas/pull/26933#discussion_r295273948>:
>
> >  -------------------------------------
>
> -pandas follows the NumPy convention of raising an error when you try to convert
> +Pandas follows the NumPy convention of raising an error when you try to convert
>
> same
> ------------------------------
>
> In doc/source/user_guide/groupby.rst
> <https://github.com/pandas-dev/pandas/pull/26933#discussion_r295274024>:
>
> > @@ -146,7 +146,7 @@ columns:
>
>      In [5]: grouped = df.groupby(get_letter_type, axis=1)
>
> -pandas :class:`~pandas.Index` objects support duplicate values. If a
> +Pandas :class:`~pandas.Index` objects support duplicate values. If a
>
> same
> ------------------------------
>
> In doc/source/user_guide/groupby.rst
> <https://github.com/pandas-dev/pandas/pull/26933#discussion_r295274277>:
>
> > @@ -1422,7 +1422,7 @@ In the following examples, **df.index // 5** returns a binary array which is use
>     df.index // 5
>     df.groupby(df.index // 5).std()
>
> -Returning a Series to propagate names
> +Returning a series to propagate names
>
> Series is the name of the class, you can leave it capitalized
> ------------------------------
>
> In doc/source/user_guide/io.rst
> <https://github.com/pandas-dev/pandas/pull/26933#discussion_r295274519>:
>
> >  ===============================
>
> -The pandas I/O API is a set of top level ``reader`` functions accessed like
> -:func:`pandas.read_csv` that generally return a pandas object. The corresponding
> +The Pandas I/O API is a set of top level ``reader`` functions accessed like
> +:func:`pandas.read_csv` that generally return a Pandas object. The corresponding
>
> same about pandas
> ------------------------------
>
> In doc/source/user_guide/io.rst
> <https://github.com/pandas-dev/pandas/pull/26933#discussion_r295274708>:
>
> > @@ -1218,7 +1218,7 @@ Infinity
>  These will ignore the case of the value, meaning ``Inf``, will also be parsed as ``np.inf``.
>
>
> -Returning Series
> +Returning series
>
> same about Series
> ------------------------------
>
> In doc/source/user_guide/options.rst
> <https://github.com/pandas-dev/pandas/pull/26933#discussion_r295275385>:
>
> >  -----------------------------------------------------
>
> -Using startup scripts for the python/ipython environment to import pandas and set options makes working with pandas more efficient.  To do this, create a .py or .ipy script in the startup directory of the desired profile.  An example where the startup folder is in a default ipython profile can be found at:
> +Using startup scripts for the Python/ipython environment to import pandas and set options makes working with pandas more efficient.  To do this, create a .py or .ipy script in the startup directory of the desired profile.  An example where the startup folder is in a default ipython profile can be found at:
>
> Can you also capitalize IPython please (in the title and in the paragraph
> ------------------------------
>
> In doc/source/user_guide/timeseries.rst
> <https://github.com/pandas-dev/pandas/pull/26933#discussion_r295276170>:
>
> > @@ -2007,7 +2007,7 @@ As with ``DatetimeIndex``, the endpoints will be included in the result. The exa
>
>     dfp['2013-01-01 10H':'2013-01-01 11H']
>
> -Frequency Conversion and Resampling with PeriodIndex
> +Frequency conversion and resampling with periodIndex
>
> restore PeriodIndex please, it's the name of a class
> ------------------------------
>
> In doc/source/user_guide/timeseries.rst
> <https://github.com/pandas-dev/pandas/pull/26933#discussion_r295276281>:
>
> >  ------------------
>
> -pandas provides rich support for working with timestamps in different time
> +Pandas provides rich support for working with timestamps in different time
>
> pandas lowercase
> ------------------------------
>
> In doc/source/user_guide/timeseries.rst
> <https://github.com/pandas-dev/pandas/pull/26933#discussion_r295276339>:
>
> >  ~~~~~~~~~~~~~~~~~~~~~~~
>
> -By default, pandas objects are time zone unaware:
> +By default, Pandas objects are time zone unaware:
>
> same
> ------------------------------
>
> In doc/source/whatsnew/v0.15.0.rst
> <https://github.com/pandas-dev/pandas/pull/26933#discussion_r295276923>:
>
> > @@ -412,7 +412,7 @@ Rolling/Expanding Moments improvements
>
>      s = pd.Series([10.5, 8.8, 11.4, 9.7, 9.3])
>
> -  Behavior prior to 0.15.0:
> +  behavior prior to 0.15.0:
>
> not sure about this one, I guess you have a reason, but looks correct as
> it was.
> ------------------------------
>
> In doc/source/whatsnew/v0.15.0.rst
> <https://github.com/pandas-dev/pandas/pull/26933#discussion_r295276969>:
>
> > @@ -770,7 +770,7 @@ Other notable API changes:
>       s2 = s
>       s += 1.5
>
> -  Behavior prior to v0.15.0
> +  behavior prior to v0.15.0
>
> same
> ------------------------------
>
> In doc/source/whatsnew/v0.17.0.rst
> <https://github.com/pandas-dev/pandas/pull/26933#discussion_r295277409>:
>
> > @@ -681,15 +681,15 @@ New Behavior:
>        pd.Timestamp.now()
>        pd.Timestamp.now() + offsets.DateOffset(years=1)
>
> -Changes to Index Comparisons
> +Changes to index comparisons
>
> Index is the class, you can leave it with capital I
> ------------------------------
>
> In doc/source/whatsnew/v0.17.0.rst
> <https://github.com/pandas-dev/pandas/pull/26933#discussion_r295277767>:
>
> > @@ -729,7 +729,7 @@ or it can return False if broadcasting can not be done:
>
>     np.array([1, 2, 3]) == np.array([1, 2])
>
> -Changes to Boolean Comparisons vs. None
> +Changes to Boolean comparisons vs. none
>
> I'd probably leave None as in Python, and may be boolean, even if I see
> your point. Up to you, just a personal preference here.
> ------------------------------
>
> In doc/source/whatsnew/v0.17.0.rst
> <https://github.com/pandas-dev/pandas/pull/26933#discussion_r295278071>:
>
> > @@ -917,7 +917,7 @@ Other API Changes
>  - ``NaT``'s methods now either raise ``ValueError``, or return ``np.nan`` or ``NaT`` (:issue:`9513`)
>
>    ===============================     ===============================================================
> -  Behavior                            Methods
> +  behavior                            Methods
>
> This is the header of the table, it was good before.
> ------------------------------
>
> In doc/source/whatsnew/v0.19.0.rst
> <https://github.com/pandas-dev/pandas/pull/26933#discussion_r295278406>:
>
> > @@ -335,7 +335,7 @@ Using the anchoring suffix, you can also specify the day of month to use instead
>
>  .. _whatsnew_0190.enhancements.index:
>
> -New Index methods
> +New index methods
>
> same, class name here, leave Index
> ------------------------------
>
> In doc/source/whatsnew/v0.20.0.rst
> <https://github.com/pandas-dev/pandas/pull/26933#discussion_r295278601>:
>
> > @@ -568,7 +568,7 @@ then write them out again after applying the procedure below.
>
>  .. _whatsnew_0200.api_breaking.index_map:
>
> -Map on Index types now return other Index types
> +Map on index types now return other index types
>
> same about Index
> ------------------------------
>
> In doc/source/whatsnew/v0.20.0.rst
> <https://github.com/pandas-dev/pandas/pull/26933#discussion_r295278716>:
>
> > @@ -823,12 +823,12 @@ currently released version of ``pandas-gbq=0.1.4``. Documentation is now hosted
>
>  .. _whatsnew_0200.api_breaking.memory_usage:
>
> -Memory Usage for Index is more Accurate
> +Memory usage for index is more accurate
>
> again Index
> ------------------------------
>
> In doc/source/whatsnew/v0.20.0.rst
> <https://github.com/pandas-dev/pandas/pull/26933#discussion_r295278958>:
>
> > @@ -1352,7 +1352,7 @@ Using ``.iloc``. Here we will get the location of the 'A' column, then use *posi
>
>  .. _whatsnew_0200.api_breaking.deprecate_panel:
>
> -Deprecate Panel
> +Deprecate panel
>
> Panel is also a class name
> ------------------------------
>
> In doc/source/whatsnew/v0.23.0.rst
> <https://github.com/pandas-dev/pandas/pull/26933#discussion_r295279319>:
>
> > @@ -186,7 +186,7 @@ resetting indexes. See the :ref:`Sorting by Indexes and Values
>
>  .. _whatsnew_023.enhancements.extension:
>
> -Extending Pandas with Custom Types (Experimental)
> +Extending Pandas with custom types (experimental)
>
> lowercase pandas
> ------------------------------
>
> In doc/source/whatsnew/v0.23.0.rst
> <https://github.com/pandas-dev/pandas/pull/26933#discussion_r295279418>:
>
> > @@ -639,7 +639,7 @@ If you wish to retain the old behavior while using Python >= 3.6, you can use
>
>  .. _whatsnew_0230.api_breaking.deprecate_panel:
>
> -Deprecate Panel
> +Deprecate panel
>
> same about Panel
> ------------------------------
>
> In doc/source/whatsnew/v0.23.1.rst
> <https://github.com/pandas-dev/pandas/pull/26933#discussion_r295279697>:
>
> >  ~~~~~~~~~~~~~~~~~
>
> -**Comparing Series with datetime.date**
> +**Comparing series with datetime.date**
>
> Series with capital S, it's a class
> ------------------------------
>
> In doc/source/whatsnew/v0.24.0.rst
> <https://github.com/pandas-dev/pandas/pull/26933#discussion_r295280167>:
>
> > @@ -105,7 +105,7 @@ See :ref:`integer_na` for more.
>
>  .. _whatsnew_0240.values_api:
>
> -Accessing the values in a Series or Index
> +Accessing the values in a series or index
>
> same about class names
> ------------------------------
>
> In doc/source/whatsnew/v0.24.0.rst
> <https://github.com/pandas-dev/pandas/pull/26933#discussion_r295280300>:
>
> > @@ -194,7 +194,7 @@ is a float.
>
>  .. _whatsnew_0240.enhancements.interval:
>
> -Storing Interval and Period Data in Series and DataFrame
> +Storing interval and period data in series and DataFrame
>
> Interval and Period are classes too, also Series
> ------------------------------
>
> In doc/source/whatsnew/v0.24.0.rst
> <https://github.com/pandas-dev/pandas/pull/26933#discussion_r295280592>:
>
> > @@ -1105,13 +1105,13 @@ broadcast.  (:issue:`23000`)
>
>  .. _whatsnew_0240.api.incompatibilities:
>
> -Series and Index Data-Dtype Incompatibilities
> +Series and index data-dtype incompatibilities
>
> Index is a class
> ------------------------------
>
> In doc/source/whatsnew/v0.24.0.rst
> <https://github.com/pandas-dev/pandas/pull/26933#discussion_r295280951>:
>
> > @@ -1417,7 +1417,7 @@ The old behavior can be retained with by localizing directly to the final timezo
>
>  .. _whatsnew_0240.deprecations.tz_aware_array:
>
> -Converting Timezone-Aware Series and Index to NumPy Arrays
> +Converting timezone-aware series and index to NumPy arrays
>
> Series and Index, class names
> ------------------------------
>
> In doc/source/whatsnew/v0.25.0.rst
> <https://github.com/pandas-dev/pandas/pull/26933#discussion_r295281224>:
>
> > @@ -286,7 +286,7 @@ of ``object`` dtype. :attr:`Series.str` will now infer the dtype data *within* t
>
>  .. _whatsnew_0250.api_breaking.incompatible_index_unions:
>
> -Incompatible Index Type Unions
> +Incompatible index type unions
>
> same about Index
> ------------------------------
>
> In doc/source/whatsnew/v0.7.0.rst
> <https://github.com/pandas-dev/pandas/pull/26933#discussion_r295281376>:
>
> > @@ -227,7 +227,7 @@ If the index had been sorted, the "range selection" would have been possible:
>     g   -1.182230
>     dtype: float64
>
> -Changes to Series ``[]`` operator
> +Changes to series ``[]`` operator
>
> same
>
> —
> You are receiving this because you were mentioned.
> Reply to this email directly, view it on GitHub
> <https://github.com/pandas-dev/pandas/pull/26933?email_source=notifications&email_token=AFA5BYIBSAPOEIAARMKKICTP3IUU5A5CNFSM4HZERZ5KYY3PNVWWK3TUL52HS4DFWFIHK3DMKJSXC5LFON2FEZLWNFSXPKTDN5WW2ZLOORPWSZGOB4AB6DY#pullrequestreview-251666191>,
> or mute the thread
> <https://github.com/notifications/unsubscribe-auth/AFA5BYIHC7PFPKWQJBKGWFDP3IUU5ANCNFSM4HZERZ5A>
> .
>
 Since your remote branch has been deleted, may be it's better to rename your local branch `git branch -m <new_name>` from your branch, push to a new remote branch, and open a new PR (referencing this to keep them linked). I guess GitHub is smart enough to keep everything (code history, comments,...), but not sure. I had a few issues when attempting to push to my remote branch, so I
decided it might be more clean to backup my changes and clone a fresh copy
of the repository from pandas-dev.  Beyond that, the above corrections have
been made.

On Wed, Jun 19, 2019 at 6:07 AM Marc Garcia <notifications@github.com>
wrote:

> Since your remote branch has been deleted, may be it's better to rename
> your local branch git branch -m <new_name> from your branch, push to a
> new remote branch, and open a new PR (referencing this to keep them
> linked). I guess GitHub is smart enough to keep everything (code history,
> comments,...), but not sure.
>
> —
> You are receiving this because you were mentioned.
> Reply to this email directly, view it on GitHub
> <https://github.com/pandas-dev/pandas/pull/26933?email_source=notifications&email_token=AFA5BYICMTRIW5YUF4OH6G3P3IVQTA5CNFSM4HZERZ5KYY3PNVWWK3TUL52HS4DFVREXG43VMVBW63LNMVXHJKTDN5WW2ZLOORPWSZGODYBZTFI#issuecomment-503552405>,
> or mute the thread
> <https://github.com/notifications/unsubscribe-auth/AFA5BYLV2XBB5WW5CIYKOP3P3IVQTANCNFSM4HZERZ5A>
> .
>
 I was guessing that, that's why I suggested to rename the branch and open a new PR. I see you opened #26830. For the next time, it's usually a good practice to reference this PR there, so it's easier to go from one to the other, and in the history we know what happened, in case we need to investigate problems. Sorry about that. I'm still a bit new to Git and was struggling a bit to
get the push working correctly.  I will keep that in mind for any future
changes.  Thank you for your patience, I really appreciate it.

On Wed, Jun 19, 2019, 10:38 AM Marc Garcia <notifications@github.com> wrote:

> I was guessing that, that's why I suggested to rename the branch and open
> a new PR. I see you opened #26830
> <https://github.com/pandas-dev/pandas/issues/26830>. For the next time,
> it's usually a good practice to reference this PR there, so it's easier to
> go from one to the other, and in the history we know what happened, in case
> we need to investigate problems.
>
> —
> You are receiving this because you were mentioned.
> Reply to this email directly, view it on GitHub
> <https://github.com/pandas-dev/pandas/pull/26933?email_source=notifications&email_token=AFA5BYJCBU65E324HZ3SSZLP3JVKRA5CNFSM4HZERZ5KYY3PNVWWK3TUL52HS4DFVREXG43VMVBW63LNMVXHJKTDN5WW2ZLOORPWSZGODYCTSCY#issuecomment-503658763>,
> or mute the thread
> <https://github.com/notifications/unsubscribe-auth/AFA5BYK3OHBTLLQBK4WNLALP3JVKRANCNFSM4HZERZ5A>
> .
>
 no worries, nobody does it the first time, that's why I was telling you how we usually do it :)