Python的pandas中,drop_duplicates函数怎么根据索引来去重

Python的pandas中,drop_duplicates函数怎么根据索引来去重数据是我预先设定好的,可能有重复... Python的pandas中,drop_duplicates函数怎么根据索引来去重数据是我预先设定好的,可能有重复

更新时间:2019-05-25 01:16

最满意答案

只能用索引切片的方式

如根据索引对data进行删除重复行,并保留第一个数据:

data_unique = data[~data.index.duplicated()]

2018-09-12 回答

其他回答

先看一个小例子

from pandas import Series, DataFrame

data = DataFrame({'k': [1, 1, 2, 2]})

print data

IsDuplicated = data.duplicated()

print IsDuplicated

print type(IsDuplicated)

data = data.drop_duplicates()

print data

执行结果是:

k

0 1

1 1

2 2

3 2

0 False

1 True

2 False

3 True

k

0 1

2 2

2018-09-13 回答

相关问答

只能用索引切片的方式 如根据索引对data进行删除重复行,并保留第一个数据: data_unique = data[~data.index.duplicated()]

您可以使用str.replace删除D字符串的结束数字部分: In [204]: df['D'] = df['D'].str.replace(r'_[0-9]+$', '')

In [205]: df

Out[205]:

A B C D

0 1 A_Task WID WI_DTL

1 1 A_adhoc_load ATT IXN

2 1 A_ad

...

熊猫版本0.20.3 python 3.6。 当我运行这段代码时: df.drop_duplicates(['b', 'D'])

有 KeyError:'b' 在你的例子中,第4行是奇怪的情况。 第一 df.loc[4,'B'] = 87

丢弃重复后: df.loc[4,'B'] = 82

看起来你在这些步骤之间有一些额外的操作。 Pandas version 0.20.3 python 3.6. When I run this line of code: df.drop_duplicate

...

IIUC,你的问题是如何使用任意函数来确定什么是重复的。 为了强调这一点,假设两个列表是重复的,如果第一个项目的总和加上第二个项目的平方在每种情况下是相同的 In [59]: In [118]: df = pd.DataFrame( {'A': [[1,2],[4,1],[2,3]]} )

(请注意,第一个和第二个列表是等价的,但不相同。) Python通常更喜欢比较函数的关键函数 ,所以在这里我们需要一个函数来说明列表的关键是什么; 在这种情况下,它是lambda l: l[0] + l[1]

...

如果你有一个数据帧 df = pd.DataFrame([['a',np.nan,np.nan,'M'],['a',12,np.nan,'M'],['c',np.nan,np.nan,'M'],['d',np.nan,np.nan,'M']],columns=['Name','Age','Region','Gender'])

基于nan计数对行进行排序,并通过保留第一个来删除具有子集'Name'的重复项可能有帮助 df['count'] = pd.isnull(df).sum(1)

df= df

...

如果您不希望在检查不同记录时考虑索引列,则可以使用以下命令删除列,或仅选择所需的列。 df = df.drop('p_index') // Pass column name to be dropped

df = df.select('name', 'age') // Pass the required columns

drop_duplicates()是dropDuplicates()的别名。 https://spark.apache.org/docs/latest/api/python/py

...

你可以调用reset_index然后再调用reset_index然后再调用reset_index : In [304]:

df = pd.DataFrame(data=np.random.randn(5,3), index=list('aabcd'))

df

Out[304]:

0 1 2

a 0.918546 -0.621496 -0.210479

a -1.154838 -2.282168 -0.060182

b 2.512519 -0

...

df.drop_duplicates(subset=['Variable','Value'],keep='first')

# time Variable Value

#2014-07-11 19:50:20 Var1 10

#2014-07-11 19:50:30 Var1 20

#2014-07-11 19:50:50 Var2 30

#2014-07-11 19:50:60 Var2 40

...

创建新列C :如果A列是数字,则在C指定公共值,否则在C指定唯一值。 在那之后,只需drop_duplicates正常。 注意 :有一个很好的isnumeric()方法用于测试单元格是否类似数字。 In [47]:

df['C'] = np.where(df.A.str.isnumeric(), 1, df.index)

print df

A B C

0 3 4 1

1 3 4 1

2 3 5 1

3 yes 8 3

4 no 8 4

5

...

将drop_duplicates与参数subset一起使用: df.drop_duplicates(subset=['A'],inplace=True)

print (df)

A B

0 John Miller

2 Mark Robinson

3 Jeffrey Robinson

文档: subset :列标签或标签序列,可选 仅考虑用于标识重复项的某些列,默认情况下使用所有列 Use drop_duplicates with par

...

python的drop duplicates,Python的pandas中,drop_duplicates函数怎么根据索引来去重相关推荐

  1. Python pandas 中loc函数的意思及用法,及跟iloc的区别

    Python pandas 中loc函数的意思及用法,及跟iloc的区别 loc和iloc的意思 loc和iloc的区别及用法展示 参考文献 loc和iloc的意思 首先,loc是location的意 ...

  2. python loc iloc,Python pandas loc用法与iloc区别 聊聊Python pandas 中loc函数的使用,及跟iloc的区别说明...

    想了解聊聊Python pandas 中loc函数的使用,及跟iloc的区别说明的相关内容吗,Rainpages在本文为您仔细讲解Python pandas loc用法与iloc区别的相关知识和一些C ...

  3. Python 列表查找,如何在列表中查找项目或者元素索引【翻译】

    Python 列表查找,如何在列表中查找项目或者元素索引 在本文中,你将学习如何在Python中查找列表中包含元素的索引. 有几种方法可以实现这一点,在本文中,你将学习三种不同的方式用于查找列表元素的 ...

  4. pandas使用drop_duplicates函数基于subset参数指定的数据列子集删除重复行、并设置keep参数保留重复行中的最后一个数据行

    pandas使用drop_duplicates函数基于subset参数指定的数据列子集删除重复行.并设置keep参数保留重复行中的最后一个数据行 目录

  5. Pandas中xs()函数索引复合索引数据的不同切面数据(索引复合索引中需要的数据):索引列复合索引中的一个切面、索引行复合索引中的一个切面

    Pandas中xs()函数索引复合索引数据的不同切面数据(索引复合索引中需要的数据):索引列复合索引中的一个切面.索引行复合索引中的一个切面 目录

  6. pandas中align函数的使用示例

    pandas中align函数的使用示例 pandas align函数生成的结果为一个元组 align(),DataFrame与Series或DataFrame之间连接运算,常用的有内联,外联,左联,右 ...

  7. Pandas中describe()函数的使用介绍

    Pandas中describe()函数的使用介绍 一.describe()函数介绍 pandas 是基于numpy构建的含有更高级数据结构和工具的数据分析包,提供了高效地操作大型数据集所需的工具.pa ...

  8. 关于pandas中cumsum函数

    关于pandas中cumsum函数 1.首先生成一个arr数组 import numpy as np import pandas as pd arr = np.arange(10).reshape(2 ...

  9. pandas使用query函数基于组合索引筛选dataframe的数据行(与and、或or、非not)

    pandas使用query函数基于组合索引筛选dataframe的数据行(与and.或or.非not) 目录 pandas使用query函数基于组合索引筛选dataframe的数据行(与and.或or ...

  10. pandas使用reindex函数为日期索引中有缺失日期的dataframe进行索引重置(所有日期都连续)、并使用fill_value参数为行进行默认填充

    pandas使用reindex函数为日期索引中有缺失日期的dataframe进行索引重置(所有日期都连续).并使用fill_value参数为行进行默认填充(add the missing date i ...

最新文章

  1. 强化学习(八) - 深度Q学习(Deep Q-learning, DQL,DQN)原理及相关实例
  2. pytorch运行遇到的问题_如何解决吸塑机在运行中遇到真空度的问题
  3. 【BUG记录】记一次游戏越来越卡的BUG
  4. 信用卡的3种分期模式全面比较
  5. hive的metatable学习
  6. html动态跟随鼠标效果,使用JS实现气泡跟随鼠标移动的动画效果
  7. Tensorflow新手通过PlayGround可视化初识神经网络
  8. python spark2.0_Python+Spark2.0+hadoop学习笔记——Python Spark MLlib决策树二分类
  9. 【转】无法打开登录所请求的数据库 xxxx。登录失败。 用户 'xxxxx' 登录失败。...
  10. c语言 10^30,^ 在C语言中是什么意思?
  11. 小甲鱼python课后题简书_MOOC_Python语言程序设计(嵩天)课后练习_第二周
  12. 以下可以作为C语言标识符的是( ),天津市计算机二级C语言选择题
  13. 宾馆如何实现WiFi无线上网短信认证?
  14. tplink的虚拟服务器功能,tplink 虚拟服务器设置
  15. Instagram帖子类型及标题撰写技巧
  16. 关于applicaiton.yml不是绿叶子图标的处理办法
  17. 【工大SCIR笔记】自然语言处理领域的数据增广方法
  18. PowerPoint ppt 触发器 自定义动画 视频 音频 播放 停止
  19. vr授权服务器虚拟机,vm虚拟机上的连接远程服务器
  20. 如何在服务器上部署静态网页,让所有人都能访看到?

热门文章

  1. 国产计算机设备,国产计算机报价
  2. android荧光进度条,Android ProgressBar 进度条荧光效果
  3. python通过什么对象连接数据库_Python(十一)数据库连接
  4. 大工18春《c和c语言程序设计》,东大21春《高级语言程序设计基础》在线平时作业1题目及答案...
  5. vue 点击div 获取位置_Vue中div contenteditable 的光标定位方法
  6. MySQL之Got fatal error 1236 from master when reading data from binary log
  7. 索引超出矩阵维度怎么修改程序_seo关键词优化工具怎么收费
  8. 唱歌如何保持高位置_【如何找到唱歌发声的高位置?】
  9. rocketmq怎么保证数据不会重复_RocketMQ 分布式事务消息
  10. 【洛谷P1774】最接近神的人_NOI导刊2010提高(02)(模版题---求逆序对数目+离散化---树状数组/权值线段树)