
    h4                     \    d dl mZ d dlZd dlZd dlmZmZmZm	Z	m
Z
 d dlmZ  G d d      Zy)    )OrderedDictN)	DataFrameIndex
MultiIndex
RangeIndexSeriesc                      e Zd Zd Zd Zd Zd Zd Zd Ze	j                  j                  di d ed	      fd
did
digd ed
gd      f eddg      gd ed
dgd      fddigd edgd      fg      d        Zd Zd Zd Zd Zy)TestFromDictc                    t        ddgddgddgddgg      t        ddgddgddgg      t        ddgddgg      t               t        ddgddgddgg      t        ddgddgddgg      g}t        |      }t        j                  t        t	        t        t        |            |            d	
      }t        j                  ||j                  |j                               y )Na      ?b   c   d   indexorient)r   r   	from_dictdictziprangelentmassert_frame_equalreindexr   selfdataresultexpecteds       SD:\jyotish\venv\Lib\site-packages\pandas/tests/frame/constructors/test_from_dict.pytest_constructor_list_of_odictsz,TestFromDict.test_constructor_list_of_odicts   s    #sc1XQx#qBC#sc1XQx89#sc1X./M#sc1XQx89#qC8c1X67
 4&&U3t9%t,-g
 	fh&6&6v||&DE    c                     t        ddgddgddgddgg      g}t        |      }t        j                  t        t	        d	g|            d
      j                  |j                        }t        j                  ||       y )Nr   r   r   r   r   r   r   r   r   r   r   )	r   r   r   r   r   r   r   r   r   r   s       r$   test_constructor_single_rowz(TestFromDict.test_constructor_single_row$   st    c3Z#qC8c1XFGH4&&tCTN';GLTTLL
 	fh/r&   c                    t        ddgddgddgg      t        ddgddgddgg      g}t        t        dd	g|            }t        g d
      }t        g d|dd      t        g d|d	      g}t	        |      }t	        j
                  |d      }t        j                  ||       t        g d|dd      t        g d|      g}t	        |      }t        t        ddg|            }t	        j
                  |d      }t        j                  ||       t        ddgddgddgddgg      t        ddgddgddgg      t        ddgddgg      t               t        ddgddgddgg      t        ddgddgddgg      g}|D cg c]  }t        |       }}t	        |      }t        t        t        t        |            |            }t	        j
                  |d      }t        j                  ||j                  |j                               t	        |t        j                  dt        j                              }t        j                  ||       t	        t        t              g      }t	        dg      }t        j                  ||       t        ddgddgddgg      t        ddgddgddgg      g}t        t        t        t        |            |            }t        g d
      }t        g d|d      t        g d|      g}t	        |      }t	        j
                  |d      }t        j                  ||       y c c}w )Nr   r   r   g      @r   g      @g      @xy)r   r   r   )r   r   r   O)dtypename)r   r   r   )r.   r   r   z	Unnamed 0r   r   r   r   r-   r   r   )r   r   r   r   r   r   r   r   r   r   r   r   nparangeint64object)	r    r!   sdictidxdata2r"   r#   r   result2s	            r$   test_constructor_list_of_seriesz,TestFromDict.test_constructor_list_of_series-   s"   #sc3Z#s<=#sc3Z#s<=
 Cc
D12O$ ;3S9;#.
 5!&&uW=
fh/ ;3S9;$
 5!Ck 2D9:&&uW=
fh/ #sc1XQx#qBC#sc1XQx89#sc1X./M#sc1XQx89#qC8c1X67
 $((4aq	4(4Cc$i 0$78&&uW=
fh&6&6v||&DED		!288(DE
fg.F012A3'
fh/ #sc3Z#s<=#sc3Z#s<=
 Cc$i 0$78O$S4f[#6NO5!&&uW=
fh/1 )s   Mc                    |j                   j                  }t        j                  |d      }|j	                  |j
                        }t        j                  ||       g dg dd}t        j                  |d      }t        j                  |      j                   j	                  t        |j                                     }t        j                  ||       y )Nr   r   r0   )    r   r   )r      r   )hithere)
T_seriesr   r   r   r   r   r   listkeys)r    float_string_frame	data_dictreconsr#   r   rsxps           r$   test_constructor_orientz$TestFromDict.test_constructor_orientl   s    &((00	$$Yw?%--FLL-A
fh/ 	2  73  #%%--d1668n=
b"%r&   c           	      
   t        dt        ddg      fdt        ddg      fdt        dd	g      fg      }t        j                  |d
      j                  }t        j                  |d      }t	        j
                  ||       y )None)col_afoo1)col_bbar1two)rK   foo2)rM   bar2three)rK   foo3)rM   bar3columnsr   r   )r   r   r   r?   r   r   )r    r   r#   r"   s       r$   "test_constructor_from_ordered_dictz/TestFromDict.test_constructor_from_ordered_dictx   s    %68I$JKL%68I$JKL+'8:K&LMN
 &&q;==$$Qw7
fh/r&   c                     t        j                  t        dddgfdddgfg      ddd	g
      }t        ddgddggddgdd	g      }t        j                  ||       d}t        j                  t        |      5  t        j                  ddgddgdddd	g
       d d d        t        j                  t        |      5  t        j                  ddgddgddd	g       d d d        y # 1 sw Y   NxY w# 1 sw Y   y xY w)NA      Br   r<   r   rJ   rO   )r   rU   r   rU   z2cannot use columns parameter with orient='columns'match)rX   r[   rU   )rU   )r   r   r   r   r   pytestraises
ValueError)r    r"   r#   msgs       r$    test_from_dict_columns_parameterz-TestFromDict.test_from_dict_columns_parameter   s     $$#1vq!f67EN

 q!fq!f-c3Z%QVX
fh/B]]:S1!fAq6*  2 ]]:S1q!fAq6 :UENS 21 21 21s   9"C(>!C4(C14C=zdata_dict, orient, expectedr   r   r   rY   rZ   rU   F)tupleize_cols)rd   rY   )r   rZ   rf   )r   r   c                 t    t        j                  ||      }|j                  }t        j                  ||       y )N)r   r   rU   r   assert_index_equal)r    rD   r   r#   dfr"   s         r$   !test_constructor_from_dict_tuplesz.TestFromDict.test_constructor_from_dict_tuples   s/    &   F3
fh/r&   c                    t        g dt        j                  g d            }t        g dt        j                  g d            }t        t              }t	        |||d       t	        j
                  |||d       y )N)rY   rZ   r   r   )rY   rZ   rY   r   )rZ   rZ   )rZ   r   r0   )rl   rm   )r   rZ   )r   r   r/   )foobarbazrn   rp   ro   )r   r   from_tuplesr4   r   r   )r    s1s2s3s       r$   (test_frame_dict_constructor_empty_seriesz5TestFromDict.test_frame_dict_constructor_empty_series   sl    
 6 67W X
 
 6 67W X
 &! 	"R34Br"=>r&   c                     d}t        j                  t        |      5  t        j                  t        g d             d d d        y # 1 sw Y   y xY w)Nz2If using all scalar values, you must pass an indexr]   ))r      )r   r<   )r   r   )r_   r`   ra   r   r   r   r    rb   s     r$   %test_from_dict_scalars_requires_indexz2TestFromDict.test_from_dict_scalars_requires_index   s5    B]]:S1,J KL 211s   !AAc                     d}t        j                  t        |      5  t        j                  ddddd       d d d        y # 1 sw Y   y xY w)	NzNExpected 'index', 'columns' or 'tight' for orient parameter. Got 'abc' insteadr]   rY   r   rZ   rq   abcr   )r_   r`   ra   r   r   ry   s     r$   test_from_dict_orient_invalidz*TestFromDict.test_from_dict_orient_invalid   s?      	 ]]:S1!A >uM 211s   AAc                     dddddddi}t        j                  |d	      }t        dgdgdgdgdggg ddg
      }t        j                  ||       y )Nalpha{   i     Ftest)value2value1animalplantr.   rU   r   r\   )r   r   r   r   r   s       r$   'test_from_dict_order_with_single_columnz4TestFromDict.test_from_dict_order_with_single_column   sv    
 $$
 USEC55'F84AI

 	fh/r&   N)__name__
__module____qualname__r%   r(   r9   rH   rV   rc   r_   markparametrizer   r   r   rj   rv   rz   r}   r    r&   r$   r
   r
      s    F 0=0~
&0T, [[%*Q-(!vqk*vhe4 k;789vv&e<
 1o	5*U+ST	
"0#"0?M
N0r&   r
   )collectionsr   numpyr1   r_   pandasr   r   r   r   r   pandas._testing_testingr   r
   r   r&   r$   <module>r      s)    #    O0 O0r&   