DOC:Improve the docstring of DataFrame.iloc()
State: closed

Checklist for the pandas documentation sprint (ignore this if you are doing
an unrelated PR):

- [X ] PR title is "DOC: update the <your-function-or-method> docstring"
- [ X] The validation script passes: `scripts/validate_docstrings.py <your-function-or-method>`
- [ X] The PEP8 style check passes: `git diff upstream/master -u -- "*.py" | flake8 --diff`
- [ X] The html version looks good: `python doc/make.py --single <your-function-or-method>`
- [X ] It has been proofread on language by another sprint participant

Please include the output of the validation script below between the "```" ticks:

```
(pandas_dev) tuhins-mbp:pandas tuhinm@us.ibm.com$ python scripts/validate_docstrings.py pandas.DataFrame.iloc

################################################################################
###################### Docstring (pandas.DataFrame.iloc)  ######################
################################################################################

Purely integer-location based indexing for selection by position.

``.iloc[]`` is primarily integer position based (from ``0`` to
``length-1`` of the axis), but may also be used with a boolean
array.

Allowed inputs are:

- An integer, e.g. ``5``.
- A list or array of integers, e.g. ``[4, 3, 0]``.
- A slice object with ints, e.g. ``1:7``.
- A boolean array.
- A ``callable`` function with one argument (the calling Series, DataFrame
  or Panel) and that returns valid output for indexing (one of the above)

``.iloc`` will raise ``IndexError`` if a requested indexer is
out-of-bounds, except *slice* indexers which allow out-of-bounds
indexing (this conforms with python/numpy *slice* semantics).

See Also
--------
DataFrame.ix : A primarily label-location based indexer, with integer position fallback.
DataFrame.loc : Fast integer location scalar accessor.

Examples
--------
>>> import pandas as pd
>>> mydict = [{'a': 1, 'b': 2, 'c': 3, 'd': 4},
...           {'a': 100,  'b': 200, 'c': 300, 'd': 400},
...           {'a': 1000,  'b': 2000,  'c': 3000,  'd': 4000 }]
>>> df = pd.DataFrame(mydict)
>>> print(df.head())
      a     b     c     d
0     1     2     3     4
1   100   200   300   400
2  1000  2000  3000  4000
>>> print(df.iloc[0])
a    1
b    2
c    3
d    4
Name: 0, dtype: int64
>>> print(df.iloc[0:2])
     a    b    c    d
0        1    2    3    4
1  100  200  300  400

ref:`Selection by Position <indexing.integer>`

################################################################################
################################## Validation ##################################
################################################################################

Errors found:
	No returns section found



```

If the validation script still gives errors, but you think there is a good reason
to deviate in this case (and there are certainly such cases), please state this
explicitly.

Error Returned because Class do not need return

Labels:
name: Docs
name: Indexing
description: Related to indexing on series/frames, not to indexes themselves

Comments:
Hello @tuhinmahmud! Thanks for updating the PR.



Cheers ! There are no PEP8 issues in this Pull Request. :beers: 

##### Comment last updated on July 07, 2018 at 19:10 Hours UTC
@tuhinmahmud pushed an update to your examples to make the ordering a bit more logical. We now show each of the valid indexer values (scalar, sequence, slice, mask, callable) for just indexing the rows. Then we show the same for rows and columns.
![fireshot capture 001 - pandas dataframe iloc pandas 0 23 0_ - file____users_taugspurger_sandbox_](https://user-images.githubusercontent.com/1312546/37292351-c5b3500c-25de-11e8-81b1-47c178128e59.png)

# [Codecov](https://codecov.io/gh/pandas-dev/pandas/pull/20228?src=pr&el=h1) Report
> :exclamation: No coverage uploaded for pull request base (`master@dcbf8b5`). [Click here to learn what that means](https://docs.codecov.io/docs/error-reference#section-missing-base-commit).
> The diff coverage is `n/a`.

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

```diff
@@            Coverage Diff            @@
##             master   #20228   +/-   ##
=========================================
  Coverage          ?   91.95%           
=========================================
  Files             ?      160           
  Lines             ?    49837           
  Branches          ?        0           
=========================================
  Hits              ?    45830           
  Misses            ?     4007           
  Partials          ?        0
```

| Flag | Coverage Δ | |
|---|---|---|
| #multiple | `90.34% <ø> (?)` | |
| #single | `42.08% <ø> (?)` | |

| [Impacted Files](https://codecov.io/gh/pandas-dev/pandas/pull/20228?src=pr&el=tree) | Coverage Δ | |
|---|---|---|
| [pandas/core/indexing.py](https://codecov.io/gh/pandas-dev/pandas/pull/20228/diff?src=pr&el=tree#diff-cGFuZGFzL2NvcmUvaW5kZXhpbmcucHk=) | `93.73% <ø> (ø)` | |

------

[Continue to review full report at Codecov](https://codecov.io/gh/pandas-dev/pandas/pull/20228?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/20228?src=pr&el=footer). Last update [dcbf8b5...329b05b](https://codecov.io/gh/pandas-dev/pandas/pull/20228?src=pr&el=lastupdated). Read the [comment docs](https://docs.codecov.io/docs/pull-request-comments).

Merged in master to restart the CI. They were complaining about a non-ASCII character, but that may have been on master when you made the PR, and not in your actual branch.

Ping if you notice that the tests all pass before we do.
@TomAugspurger  Hi .. I am kind of lost as to what I can do to make it work .. I see one of the test continuous-integration/travi-ci/pr failing.. not sure what to make of it 

![image](https://user-images.githubusercontent.com/5097966/38278064-2d282a9a-3760-11e8-8477-73cca79c6c08.png)

![image](https://user-images.githubusercontent.com/5097966/38278188-a3884ed6-3760-11e8-9cb9-b361ea81891b.png)

Sometimes travis jobs take much longer than others, and exceed Travis' time limit. I restarted that one.
Looks like everything was addressed. Will merge on green since it looks like CI caught an issue before.