Issue 1:
@tvyomkesh opened some issues (#9384, #9389) on errors in the examples (and some PRs to fix this). This raised the following question to me:

Apart from fixing the examples, I think we should think for a moment what we want to do with these examples. Why do we want them? What is their function?

And depending on that, do we want to update/extend them? Or maybe move them to the docs?

I personally never looked at these examples. And they are also quite outdated. Eg using the ols from pandas is somewhat (unofficially) deprecated for the use of statsmodels, and the finance module in matplotlib is deprecated starting from matplotlib 1.4. And to get such data, I think pandas-datareader should be used.

@jreback @TomAugspurger @shoyer

Issue 2:
DataFrame.from_dict does not seem to behave according to the documentation.

import pandas as pd

print("pandas.from_dict(<dict>, orient='index')")
print(pd.DataFrame.from_dict(dict([ ['key1', 1],['key2',2] ]), orient='index'))

print("pandas.from_dict(<list [<list>]>, orient='columns')")
print(pd.DataFrame.from_dict([ ['key1', 1],['key2',2] ], orient='columns'))

print("pandas.from_dict(<dict>, orient='columns')")
print(pd.DataFrame.from_dict(dict([ ['key1', 1],['key2',2] ]), orient='columns'))

Produces

pandas.from_dict(<dict>, orient='index')
0
key2 2
key1 1
pandas.from_dict(<list [<list>]>, orient='columns')
0 1
0 key1 1
1 key2 2
pandas.from_dict(<dict>, orient='columns')
Traceback (most recent call last):
File "../../bin/pandaserr.py", line 10, in <module>
print(pd.DataFrame.from_dict(dict([ ['key1', 1],['key2',2] ]), orient='columns'))
File "/home/cwarth/.local/lib/python2.7/site-packages/pandas/core/frame.py", line 804, in from_dict
return cls(data, index=index, columns=columns, dtype=dtype)
File "/home/cwarth/.local/lib/python2.7/site-packages/pandas/core/frame.py", line 226, in __init__
mgr = self._init_dict(data, index, columns, dtype=dtype)
File "/home/cwarth/.local/lib/python2.7/site-packages/pandas/core/frame.py", line 363, in _init_dict
dtype=dtype)
File "/home/cwarth/.local/lib/python2.7/site-packages/pandas/core/frame.py", line 5158, in _arrays_to_mgr
index = extract_index(arrays)
File "/home/cwarth/.local/lib/python2.7/site-packages/pandas/core/frame.py", line 5197, in extract_index
raise ValueError('If using all scalar values, you must pass'
ValueError: If using all scalar values, you must pass an index

According to the reference documentation, "If the keys of the passed dict should be the columns of the resulting DataFrame, pass ‘columns’" That doesn't appear to be what is happening.

Expected Output

from_dict(<dict>, orient='index') works as expected.

I would expect from_dict(..., orient='columns') to return a dataframe with the dictionary keys forming the column index, like this:

key1 key2
0 1 2

I would expect from_dict() to take a dict as a parameter in either case. Instead it appears to take a a dict for orient='index' and a list of lists (or tuples) for orient='columns'. Passing a dict with integer values when orient='columns' causes a crash.

output of pd.show_versions()

INSTALLED VERSIONS
------------------
commit: None
python: 2.7.6.final.0
python-bits: 64
OS: Linux
OS-release: 3.13.0-45-generic
machine: x86_64
processor: x86_64
byteorder: little
LC_ALL: None
LANG: en_US.UTF-8

pandas: 0.17.1
nose: 1.3.6
pip: 8.0.2
setuptools: 18.8
Cython: 0.23.2
numpy: 1.10.4
scipy: 0.15.1
statsmodels: 0.6.1
IPython: 4.0.3
sphinx: 1.2.3
patsy: 0.3.0
dateutil: 2.4.2
pytz: 2015.7
blosc: None
bottleneck: None
tables: 3.1.1
numexpr: 2.2.2
matplotlib: 1.5.0
openpyxl: 2.2.0-b1
xlrd: 0.9.4
xlwt: 0.7.5
xlsxwriter: None
lxml: 3.3.3
bs4: 4.3.2
html5lib: 0.999
httplib2: 0.9
apiclient: None
sqlalchemy: 1.0.11
pymysql: None
psycopg2: None
Jinja2: None