美文网首页公众号:阿区先生Python数据分析
数据分析—Pandas删除数据的几种情况

数据分析—Pandas删除数据的几种情况

作者: python与数据分析 | 来源:发表于2020-11-04 14:28 被阅读0次

    开始之前,pandas中DataFrame删除对象可能存在几种情况

    1、删除具体列
    2、删除具体行
    3、删除包含某些数值的行或者列
    4、删除包含某些字符、文字的行或者列

    本文就针对这四种情况探讨一下如何操作。

    数据准备

    模拟了一份股票交割的记录。

    import pandas as pd
    
    data = {  '证券名称' : ['格力电器','视觉中国','成都银行','中国联通','格力电器','视觉中国','成都银行','中国联通'],  '摘要': ['证券买入','证券买入','证券买入','证券买入','证券卖出','证券卖出','证券卖出','证券卖出'],  '成交数量' : [500,1000,1500,2000,500,500,1000,1500], '成交金额' :[-5000,-10000,-15000,-20000,5500,5500,11000,15000]}
    df = pd.DataFrame(data, index = ['2018-2-1','2018-2-1','2018-2-1','2018-2-1','2018-2-2','2018-2-2','2018-2-2','2018-2-3'])
    df
    
    image.png

    删除具体列

    df.drop('成交数量',axis=1)
    
    image.png

    删除具体行

     df.drop('2018-2-3')
    
    image.png

    也可以根据行号删除记录,比如删除第三行

    df.drop(df.index[3])
    
    image.png

    注意,这个办法其实不是按照行号删除,而是按照索引删除。如果index为3,则会将前4条记录都删除。这个方法支持一个范围,以及用负数表示从末尾删除。

    删除特定数值的行(删除成交金额小于10000)

    df[ df['成交金额'] > 10000]
    
    image.png

    本例其实是筛选,如果需要保留,可以将筛选后的对象赋值给自己即可。

    删除某列包含特殊字符的行

    df[ ~ df['证券名称'].str.contains('联通') ]
    
    image.png

    如果想取包含某些字符的记录,可以去掉~

    df[ df['证券名称'].str.contains('联通') ]
    
    image.png

    完成~
    希望本文的内容对大家的学习或者工作能带来一定的帮助,每天进步一点点,加油。

    相关文章

      网友评论

        本文标题:数据分析—Pandas删除数据的几种情况

        本文链接:https://www.haomeiwen.com/subject/eldgvktx.html