发布时间:2023-02-20 18:00
查了一些原因,口径都比较统一,都是索引重复引发的报错。索引只有行索引和列索引,首先排除行索引的问题,因为行索引比较简单。。。
首先做一下测试用的数据
a = pd.DataFrame({\'A\':[1,2,3,4],\'B\':[5,6,7,8],\'C\':[\'a\',\'a\',\'a\',\'a\'],\'D\':[\'q\',\'q\',\'q\',\'q\']})
b = pd.DataFrame({\'A\':[1,2,3],\'A\':[5,6,7],\'C\':[\'a\',\'a\',\'a\'],\'D\':[\'q\',\'q\',\'q\']})
c = pd.concat([a,b],axis=0)
可见上面的变量c的索引不是连续的,所以我们利用函数重置索引。
利用reset_index()函数。
drop: 重新设置索引后是否将原索引作为新的一列并入DataFrame,默认为False
inplace: 是否在原DataFrame上改动,默认为False
level: 如果索引(index)有多个列,仅从索引中删除level指定的列,默认删除所有列
col_level: 如果列名(columns)有多个级别,决定被删除的索引将插入哪个级别,默认插入第一级
col_fill: 如果列名(columns)有多个级别,决定其他级别如何命名
(1)如果不指定drop参数,则会把之前的索引作为新的列加入到数据。
(2)inplace参数的数值结果如下,不确定对不对,很少用 -_+…
二、如果行索引没有问题的话,就是检查列索引了,列名是否重复。
#下面的方法用于查看列名中是否有重复的元素
aa = a.columns.to_list()
bb = set(aa)
if len(aa) == len(bb):
print(\'没有重复的元素!\')
else:
print(\'有重复的元素!\')
#查看重复的元素是哪些,及重复的次数
from collections import Counter
a = a.columns.to_list()
b = dict(Counter(a))
# 打印重复的元素
print ([key for key,value in b.items() if value > 1]) 、
#打印重复元素和重复元素的重复次数
print ({key:value for key,value in b.items() if value > 1})
#查看重复的列,决定删除或修改哪列
a.filter(like=\'A\')
到此就找到了所有的重复的列名啦!下面是完整的代码,如果大家有更好的方法欢迎分享。
a = pd.DataFrame({\'A\':[1,2,3,4],\'B\':[5,6,7,8],\'C\':[\'a\',\'a\',\'a\',\'a\'],\'D\':[\'q\',\'q\',\'q\',\'q\']})
b = pd.DataFrame({\'A\':[1,2,3],\'A\':[5,6,7],\'C\':[\'w\',\'w\',\'w\'],\'D\':[\'d\',\'d\',\'d\']})
c = pd.concat([a,b],axis=0)
#下面的方法用于查看列名中是否有重复的元素
aa = a.columns.to_list()
bb = set(aa)
if len(aa) == len(bb):
print(\'没有重复的元素!\')
else:
print(\'有重复的元素!\')
#########################################
from collections import Counter
a = a.columns.to_list()
b = dict(Counter(a))
# 打印重复的元素
print ([key for key,value in b.items() if value > 1])
#打印重复元素和重复元素的重复次数
print ({key:value for key,value in b.items() if value > 1})
a.filter(like=\'A\')
JabRef显示bibtexkey或者citationkey
手把手教你springboot整合bootstrap-table、pagehelper实现表格生成、页面美化、客户端和服务端分页
【酷炫烟花特效表白(Html5+CSS3+JS,带背景音乐哦!)】
android开发学习之-----界面布局 TableLayout + TableRow
【uni-app】点击左上角返回按钮,弹出弹窗或者是携带参数返回上一页
使用Mybatis-plus实现时间自动填充(代码直接可用)
JavaScript中this指针详解,以及React中this指针的指向