1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
U
­ý°d».ã@sTddlZddlZddlZddlmZmZmZddlm    Z
ddd„Z Gdd„dƒZ dS)éN)Ú    DataFrameÚSeriesÚ
date_rangecCs&|dk    rt ||¡|jt|ƒdS)N)ÚtmÚassert_frame_equalZdtypesÚstr)ÚresultÚexpected©r
ú`d:\z\workplace\vscode\pyvenv\venv\Lib\site-packages\pandas/tests/frame/test_nonunique_indexes.pyÚcheck s r c@sŒeZdZdd„Zdd„Zdd„Zdd„Zd    d
„Zd d „Zd d„Z    dd„Z
dd„Z dd„Z dd„Z dd„Zdd„Zdd„Zdd„Zdd „Zd!S)"ÚTestDataFrameNonuniqueIndexescCsJtj dd¡}ttdƒƒ}t|ddgd}||_t||d}t||ƒdS)NééÚA©Úcolumns)ÚnpÚrandomÚrandnÚlistÚrangerrr )ÚselfZarrÚidxÚdfr    r
r
r Ú.test_setattr_columns_vs_construct_with_columnss   zLTestDataFrameNonuniqueIndexes.test_setattr_columns_vs_construct_with_columnscCs~tdddd}tddddgddddgddddggd    d    d    d    gd
}||_tddddgddddgddddgg|d
}t||ƒdS) NZ20130101ézQ-NOV)ZperiodsÚfreqéérrÚar)rrrr )rrrr    r
r
r Ú;test_setattr_columns_vs_construct_with_columns_datetimeindxs 
ÿ*zYTestDataFrameNonuniqueIndexes.test_setattr_columns_vs_construct_with_columns_datetimeindxc    CsTtddddgddddgddddggddddgd}d    |d
<tddddd    gddddd    gddddd    ggddddd
gd}t||ƒtjtd d "| d dtt|jƒdƒ¡W5QRXd|d<tddddd    dgddddd    dgddddd    dggddddd
dgd}t||ƒd|d<tddddd    dgddddd    dgddddd    dggddddd
dgd}t||ƒd|d<|d=tdddd    dgdddd    dgdddd    dggdddd
dgd}t||ƒ|d=tddd    dgddd    dgddd    dggddd
dgd}t||ƒ|     ¡}tddd    dgddd    dgddd    dggddd
dgd}t||ƒ| ddd¡tdddd    dgdddd    dgdddd    dggdddd
dgd}t||ƒtjtdd | ddd¡W5QRX|jdddddtddddd    dgddddd    dgddddd    dggddddd
dgd}t||ƒ|d=tddd    dgddd    dgddd    dggddd
dgd}t
  ||¡dS)NrrrrÚfooÚbarÚhellorZbahÚstringzLength of value©ÚmatchrZ AnotherColumnÚfoo2rZnew_colg@z cannot insertg@T)Zallow_duplicates) rr ÚpytestÚraisesÚ
ValueErrorÚinsertrÚlenÚindexZ _consolidaterr©rrr    r
r
r Ú"test_insert_with_duplicate_columns(s„ 
þ& þ
&,þ
,þ
& þ
 
þ
 
þ
& þ
ýú
 
þz@TestDataFrameNonuniqueIndexes.test_insert_with_duplicate_columnscCsDtddddgddddgddddggdddd    gd
}t|ƒd |d <tddddd gddddd gddddd ggdddd    d gd
}t||ƒ|d}tddgddgddggddgd
}t||ƒd |d<td dd dd gd dd dd gd dd dd ggdddd    d gd
}t||ƒ|d=tddd gddd gddd ggdd    d gd
}t||ƒdS)Nrçð?rç@rç@r"r#r$rg@r(r%)rr )rrr    rr
r
r Útest_dup_across_dtypess: 
þ& þ
"
   ý ú
ÿz4TestDataFrameNonuniqueIndexes.test_dup_across_dtypescCsŒttj dd¡dddddgdd    dgd
}|jt td ƒ¡fD]J}| ¡}t    |j
|jd }t||d    d œdd    dgd}||d<t ||ƒq<dS)Nrrr ÚbÚcÚdÚerÚB©r.rZedcba©r.)rr9r) rrrrr.ÚpdZIndexrÚcopyrÚvaluesr )rrr.Zthis_dfZ expected_serZ expected_dfr
r
r Útest_column_dups_indexes¤s  ý þz6TestDataFrameNonuniqueIndexes.test_column_dups_indexescCsˆttj dd¡ddgd}tdtdƒddgd}d|d<t||ƒttj dd¡ddgd}tdtdƒddgd}d|d<t||ƒdS)NrrÚthatrr1r:r)rrrrrr Zrandr/r
r
r Ú+test_changing_dtypes_with_duplicate_columnsµs
zITestDataFrameNonuniqueIndexes.test_changing_dtypes_with_duplicate_columnsc    CsÄtddgdtjgddgddggddgd}tddgddgdtjgdd    ggddgd}d
}tjt|d ||kW5QRX| |¡}||k}td d gd d gd d gd d ggddgd}t ||¡dS)Nrrrrrr9rrrzQCan only compare identically-labeled \(both index and columns\) DataFrame objectsr&FT)    rrÚnanr)r*r+Z reindex_likerr)rZdf1Zdf2ÚmsgZdf1rrr    r
r
r Útest_dup_columns_comparisonsÅs**ÿ
þz:TestDataFrameNonuniqueIndexes.test_dup_columns_comparisonsc    Csttdddgdddgdtddddgddddgdtddddgddddgddœƒ}tj|d    |d
|d    gd d }|d    d
d    g}t||ƒdS) NTFr r5r6r;r7)ÚoneZtwoÚthreerErFr©Zaxis)rrr<Úconcatr )rZdfboolr    rr
r
r Útest_mixed_column_selectionÚsýÿ z9TestDataFrameNonuniqueIndexes.test_mixed_column_selectioncCs®tt d¡ dd¡dddddgdd    d
d d gd }|dd
dg ¡}|jdddg}tt d¡ dd¡dddddgdd    d
d d gd }|dd
dg}|jdddg}t||ƒdS)Ng9@rr r5r6r7r8rr9ÚCÚDÚEr:)rrÚarangeÚreshaper=Úlocr )rrÚzr    rr
r
r Útest_multi_axis_dupsès  ý  ýz2TestDataFrameNonuniqueIndexes.test_multi_axis_dupscCs¢tddggddgd}ddg|_t|ƒtddggddgd}t ||¡tdddggdddgd}dddg|_t|ƒtdddggdddgd}t ||¡dS)Nrrr rúa.1rr5©rrrrrr/r
r
r Útest_columns_with_dupsüs
  z4TestDataFrameNonuniqueIndexes.test_columns_with_dupscCsNtddggddgd}ddg|_t|ƒtddggddgd}t ||¡dS)Nrrr rr5rSr/r
r
r Útest_columns_with_dup_index s
 
z9TestDataFrameNonuniqueIndexes.test_columns_with_dup_indexc    Csltdddddddggddd    d    d
d d gd }td ƒ|_t|ƒtdddddddggtd ƒd }t ||¡dS)Nrrr1r2r3r"r#r r5r7r6rZABCDEFG)rrrrrrr/r
r
r Útest_multi_dtypesþ
ÿz.TestDataFrameNonuniqueIndexes.test_multi_dtypecCsbtddddggddddgd}dddd    g|_t|ƒtddddggdddd    gd}t ||¡dS)
Nrrr"r#r rrRza.2za.3rSr/r
r
r Útest_multi_dtype2!s
z/TestDataFrameNonuniqueIndexes.test_multi_dtype2c    Csättj dd¡dd}ttj dd¡ d¡ƒ}td|j|jd}td|j|jd}tt d    ¡|j|jd}tj    |||||gd
d }|sºt
|j j ƒt
|jƒks t ‚t
|j jƒt
|jƒksºt ‚tt
|jƒƒD]}|jdd…|fqÈdS) Né
rÚfloat64)ZdtypeÚint64Tr:r"Z20010101rrG)rrrrZastyper.rr<Ú    TimestamprHr-Z_mgrZblknosÚAssertionErrorZblklocsrÚiloc)    rZusing_array_managerZdf_floatZdf_intZdf_boolZ    df_objectZdf_dtrÚir
r
r Útest_dups_across_blocks(sÿz5TestDataFrameNonuniqueIndexes.test_dups_across_blockscCsJdddgdddgg}t|dddgd    }t|ƒ}dddg|_t ||¡dS)
Nréÿÿÿÿr2réþÿÿÿr3rr9r)rrrr)rÚvalsÚrsZxpr
r
r Útest_dup_columns_across_dtype;s
 z;TestDataFrameNonuniqueIndexes.test_dup_columns_across_dtypec    Cs
d}d}tt d¡ dd¡jƒ}tdƒ|_|jdd…df}tj    ||dd|jdd…df<W5QRXt 
|jdd…df|¡tt d¡ dd¡jƒ}dt dƒt dƒg|_|jdd…df}tj    ||dd|jdd…df<W5QRXt 
|jdd…df|¡dS)    Nz&will attempt to set the values inplaceé    rZAAArr&rr) rrrMrNÚTrrr]rZassert_produces_warningZassert_series_equalÚfloatr)rÚwarnrCrr    r
r
r Útest_set_value_by_indexCs
z5TestDataFrameNonuniqueIndexes.test_set_value_by_indexN)Ú__name__Ú
__module__Ú __qualname__rr!r0r4r?rArDrIrQrTrUrVrWr_rdrir
r
r
r r s 
    W% r )N) Únumpyrr)Zpandasr<rrrZpandas._testingZ_testingrr r r
r
r
r Ú<module>s