如何知道使用熊猫删除的行数
Posted
技术标签:
【中文标题】如何知道使用熊猫删除的行数【英文标题】:how to know the count of number of rows deleted using pandas 【发布时间】:2018-11-06 15:47:45 【问题描述】:从这 2 个 .csv 文件过滤完成并删除了常见的 emailid,我可以得到删除后的总数,但是有没有任何选项可以给出使用 pandas 删除多少行。
使用 mysql : 从数据 a 中删除 a,data1 b 其中 a.email=b.email;选择行数(); 如何使用 pandas 来做到这一点
import pandas as pd
colnames=['id','emailid']
data=pd.read_csv("input.csv",names=colnames,header=None)
colnames=['email']
data1= pd.read_csv("compare.csv",names=colnames,header=None)
emailid_suppress1=data1['email'].str.lower()
suppress_md5=data[~data['emailid'].isin(emailid_suppress1)]
print suppress_md5.count()
【问题讨论】:
【参考方案1】:我认为需要sum
的True
s 值,这些值类似于1
:
data = pd.DataFrame('id':list('abcde'), 'emailid':list('klmno'))
print (data)
id emailid
0 a k
1 b l
2 c m
3 d n
4 e o
data1 = pd.DataFrame('email':list('ABCKLDEFG'))
print (data1)
email
0 A
1 B
2 C
3 K
4 L
5 D
6 E
7 F
8 G
emailid_suppress1=data1['email'].str.lower()
print ((~data['emailid'].isin(emailid_suppress1)).sum())
3
suppress_md5=data[~data['emailid'].isin(emailid_suppress1)]
print (suppress_md5)
id emailid
2 c m
3 d n
4 e o
编辑:
print ((data['emailid'].isin(emailid_suppress1)).sum())
2
suppress_md5=data[data['emailid'].isin(emailid_suppress1)]
print (suppress_md5)
id emailid
0 a k
1 b l
【讨论】:
谢谢耶兹瑞尔。但我正在寻找此处删除的行数,因为 K,L 在 emailid 和 email 中都应为 2。因为 sum() 类似于 count 。这是我需要用于大型 csv 文件的函数。需要给出删除行数的函数 @DivyaNagandla - 我明白,然后删除~
,所以不要通过~
反转
@DivyaNagandla - 抱歉,我不知道 bash
:(
@DivyaNagandla - 使用len(df.query('line_race != 0') )
非常感谢 jezrael:)以上是关于如何知道使用熊猫删除的行数的主要内容,如果未能解决你的问题,请参考以下文章