@classmethod<EOL><INDENT>def from_dict(cls, data, intersect=False, orient='<STR_LIT>', dtype=None):<DEDENT>
from collections import defaultdict<EOL>orient = orient.lower()<EOL>if orient == '<STR_LIT>':<EOL><INDENT>new_data = defaultdict(OrderedDict)<EOL>for col, df in data.items():<EOL><INDENT>for item, s in df.items():<EOL><INDENT>new_data[item][col] = s<EOL><DEDENT><DEDENT>data = new_data<EOL><DEDENT>elif orient != '<STR_LIT>':  <EOL><INDENT>raise ValueError('<STR_LIT>')<EOL><DEDENT>d = cls._homogenize_dict(cls, data, intersect=intersect, dtype=dtype)<EOL>ks = list(d['<STR_LIT:data>'].keys())<EOL>if not isinstance(d['<STR_LIT:data>'], OrderedDict):<EOL><INDENT>ks = list(sorted(ks))<EOL><DEDENT>d[cls._info_axis_name] = Index(ks)<EOL>return cls(**d)<EOL>
Construct Panel from dict of DataFrame objects.

Parameters
----------
data : dict
    {field : DataFrame}
intersect : boolean
    Intersect indexes of input DataFrames
orient : {'items', 'minor'}, default 'items'
    The "orientation" of the data. If the keys of the passed dict
    should be the items of the result panel, pass 'items'
    (default). Otherwise if the columns of the values of the passed
    DataFrame objects should be the items (which in the case of
    mixed-dtype data you should do), instead pass 'minor'
dtype : dtype, default None
    Data type to force, otherwise infer

Returns
-------
Panel