Ruk*_*ech 24 python duplicate-removal pandas
如果我想在数据帧中删除重复索引,则以下原因不明显:
myDF.drop_duplicates(cols=index)
Run Code Online (Sandbox Code Playgroud)
和
myDF.drop_duplicates(cols='index')
Run Code Online (Sandbox Code Playgroud)
查找名为"index"的列
如果我想删除索引,我必须做:
myDF['index'] = myDF.index
myDF= myDF.drop_duplicates(cols='index')
myDF.set_index = myDF['index']
myDF= myDF.drop('index', axis =1)
Run Code Online (Sandbox Code Playgroud)
有更有效的方法吗?
小智 24
'重复'方法适用于数据帧和系列.只需选择那些未标记为具有重复索引的行:
df[~df.index.duplicated()]
Run Code Online (Sandbox Code Playgroud)
您可以使用numpy.unique获取唯一值的索引并用于iloc获取这些索引:
>>> df
val
A 0.021372
B 1.229482
D -1.571025
D -0.110083
C 0.547076
B -0.824754
A -1.378705
B -0.234095
C -1.559653
B -0.531421
[10 rows x 1 columns]
>>> idx = np.unique(df.index, return_index=True)[1]
>>> df.iloc[idx]
val
A 0.021372
B 1.229482
C 0.547076
D -1.571025
[4 rows x 1 columns]
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
21969 次 |
| 最近记录: |