前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >Pandas基础知识

Pandas基础知识

作者头像
卡伊德
发布2022-09-13 14:48:37
7050
发布2022-09-13 14:48:37
举报
文章被收录于专栏:caidblog

常用数据类型

Series 一维,带标签数组

DataFrame 二维,Series容器

取值

  • 取行: (1)df[:20] 前20行 (2)df[:20]['列索引名'] 取指定列对应的前20行
  • 取列 (1)df['列索引名']指定列 索引名对应的一列 返回的是Series类型
  • loc和iloc loc 通过标签(即列索引)取值
    • t.loc['a','b'] 取a行b列对应的值
    • t.loc['a']t.loc['a',:] 取a对应的一整行
    • t.loc[['a','c'],['b','d']] 多行多列

    iloc 通过为止(即行索引)取值

    • t.iloc[3]t.iloc[3,:] 取第四行
    • t.iloc[:,2] 取第三列
    • t.iloc[:,[2,1]] 取第3列和第2列
    • t.iloc[[0,2],[2,1]] 取第1行和第3行对应的第3列和第2列
    • t.iloc[1:,:2] 取1之后每一行对应2之前每一列

bool索引

df[bool判断表达式]

如:df[(df['列索引名']>10) & (df['列索引名']<20 )] 取df中指定列索引对应的值中10-20之间的元素

缺值处理

pd.isnull(t) 返回的数组中NaN为True,否则为False

pd.notnull(t) 返回的数组中NaN为False,否则为True

t.dropna(axis=0) 删除包含NaN的行

t.dropna(axis=0, how='all', inplace=True)

  • how的值为all时,某行全为NaN时才删除,为any时存在NaN则删除整行
  • inplace为True时,删除之后将结果替换为当前数组。

t.fillna(值) 将NaN填充为指定的值,常填充均值等,如t.fillna(t.mean()) 会将NaN对应列的均值进行填充

t['列索引名'] = t['列索引名'].fillna(t['列索引名'].mean()) 只将指定索引对应的列中NaN对应的值进行填充均值

合并

  • join() 按行合并 df1.join(df2)
  • merge()按列合并
  • df1.merge(df2, on='操作的列名', how='inner')内连接(默认) 交集
  • df1.merge(df2, on='a')方法会将df1中a列的值和df2中a列的值进行比较,然后将相等的值对应的整行进行合并,而且返回的结果中只包含具有可以合并的行
  • df1.merge(df2, on='a', how='outer') 外连接,a列包含的数据为df1和df2中a列元素的并集,每行元素分别对应,有则是原数据(一般a列的元素都有,因为操作列为a),没有则是NaN 并集
  • df1.merge(df2, on='a', how='left') 左连接,以df1为准
  • df1.merge(df2, on='a', how='right') 右连接,以df2为准

分组和聚合

分组: gd = groupby(by='分组字段') 返回类型是可遍历的DataFrameGroupBy类型,遍历后每一个元素为一个元组,

聚合:gd.count()

索引和符合索引

  • 函数 df.index 获取index df.index=['x', 'y'] 指定index df.reindex(list('abcdef')) 重新设置index,如果之前没有f行,则f行对应的数据为NaN df.set_index('a', drop=False) 指定某一列作为index df.set_index('a').index.unique() 返回index的唯一值 df.swaplevel() 交换符合索引的顺序
  • 取值 一对多:df.loc['一'].loc['多']df.loc['多']['一']df['一','多'] 常与swaplevel()搭配
本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2020/08/17 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 常用数据类型
  • 取值
  • bool索引
  • 缺值处理
  • 合并
  • 分组和聚合
  • 索引和符合索引
相关产品与服务
容器服务
腾讯云容器服务(Tencent Kubernetes Engine, TKE)基于原生 kubernetes 提供以容器为核心的、高度可扩展的高性能容器管理服务,覆盖 Serverless、边缘计算、分布式云等多种业务部署场景,业内首创单个集群兼容多种计算节点的容器资源管理模式。同时产品作为云原生 Finops 领先布道者,主导开源项目Crane,全面助力客户实现资源优化、成本控制。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档