美文网首页数据蛙第七期就业班
pandas中查看数据类型的几种方式

pandas中查看数据类型的几种方式

作者: 精灵鼠小弟_fb22 | 来源:发表于2020-05-27 10:14 被阅读0次

    在获得数据之后、分析数据之前,我们一般需要对数据总体进行一个概览,如有哪些字段,每个字段的类型,值是否缺失等,以下列出了几种方法,供我们方便快捷的查看dataframe的数据类型。

    1、维度查看:df.shape

    # 以某表为例,先读取源数据,不同城市,每天的产品销售信息
    engine = create_engine('mysql+pymysql://username:password@localjost:3306/dataset?charset=utf8')
    sql = 'select * from dw_customer_order'
    gather_customer_order = pd.read_sql_query(sql,con=engine)
    gather_customer_order.shape
    

    返回结果如下如所示,说明此表格一共有20w+行,16列:

    (203401, 16)
    

    2、数据表基本信息(维度、列名称、数据格式、所占空间等):df.info()

    gather_customer_order.info()
    

    返回结果如图,可见,用info方法可以非常全面的看出表格的各项属性,包括:
    1.表格的维度:203401行 * 16列,RangeIndex:0-203400
    2.表格的列名,是否为空值和列字段类型dtype(后面我会给出pandas的数据类型和Python数据类型的匹配关系图!!!)
    3.表格所占空间:24.8M+

    <class 'pandas.core.frame.DataFrame'>
    RangeIndex: 203401 entries, 0 to 203400
    Data columns (total 16 columns):
    #   Column              Non-Null Count   Dtype  
    ---  ------              --------------   -----  
    0   create_date         203401 non-null  object 
    1   product_name        203401 non-null  object 
    2   cpzl_zw             203401 non-null  object 
    3   cplb_zw             203401 non-null  object 
    4   order_num           203401 non-null  int64  
    5   customer_num        203401 non-null  int64  
    6   sum_amount          203401 non-null  float64
    7   is_current_year     203401 non-null  object 
    8   is_last_year        203401 non-null  object 
    9   is_yesterday        203401 non-null  object 
    10  is_today            203401 non-null  object 
    11  is_current_month    203401 non-null  object 
    12  is_current_quarter  203401 non-null  object 
    13  chinese_province    203401 non-null  object 
    14  chinese_city        203401 non-null  object 
    15  chinese_territory   203401 non-null  object 
    dtypes: float64(1), int64(2), object(13)
    memory usage: 24.8+ MB
    

    3、每一列数据的格式:df.dtypes
    这个功能与df.info()类似,如果只想查看每一列存储的是什么数据格式,那么可以直接使用df.dtypes

    gather_customer_order.dtypes
    

    返回结果如图,可以看到,这个结果基本就是df.info()的简化版,指明了各列的数据类型。

    create_date            object
    product_name           object
    cpzl_zw                object
    cplb_zw                object
    order_num               int64
    customer_num            int64
    sum_amount            float64
    is_current_year        object
    is_last_year           object
    is_yesterday           object
    is_today               object
    is_current_month       object
    is_current_quarter     object
    chinese_province       object
    chinese_city           object
    chinese_territory      object
    dtype: object
    

    4、某一列格式:df['B'].dtype
    分析过程中,由于字段繁多,所以用到某字段时需要适时查看,同样可以运用dtype,此处不再赘述。

    由上文可见,float64,int64,object都是pandas专有的数据格式,同理,Python,numpy都有自己的一套数据格式,它们之间的对应关系可参考下面的表格:


    数据类型对应表

    这里需要强调的是object类型实际上可以包括多种不同的类型,比如一列数据里,既有整型、浮点型,也有字符串类型,这些在pandas中都会被标识为‘object’,所以在处理数据时,可能需要额外的一些方法提前将这些字段做清洗,str.replace(),float(),int(),astype(),apply()等等。

    如果觉得有用,给我点个赞吧,你的支持就是对我最大的鼓励!ღ( ´・ᴗ・` )❥

    相关文章

      网友评论

        本文标题:pandas中查看数据类型的几种方式

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