python pandas使用df[]获取dataFrame的数据

pandas查询数据有很多种方式,比较常见的有df[]形式,df.A属性方式,df.iloc[] 方式,df.loc[]方式等等。这几种方式在使用时十分容易混淆,容易报错。从今天开始,我们对此做一下认真分析,纠正下使用方式。今天,我们看一下df[]方式。
df[]索引方式仅接收一个参数,对于获取整行整列的数据十分方便:
(1)字符形式

'''字符形式仅接收列label,如下面的dataFrame就是
仅接收'name','score', 'grade' '''
# 指定了id列为行标识
>>> df = pd.read_excel(r'D:/myExcel/1.xlsx', index_col='id')
>>> df
     name  score grade
id                    
a     bog     45     A
b   jiken     67     B
c     bob     23     A
d   jiken     34     B
e    lucy     98     A
f    tidy     75     B
# 获取name列
>>> df['name']
id
a      bog
b    jiken
c      bob
d    jiken
e     lucy
f     tidy
Name: name, dtype: object

2、使用列表形式
列表形式中,列表中的元素必须是列标识

# 获取name列以及score列
>>> df[['name', 'score']]
     name  score
id              
a     bog     45
b   jiken     67
c     bob     23
d   jiken     34
e    lucy     98
f    tidy     75

# 获取前两列,此处注意df.columns返回的
# 实际是列名的列表,通过切片返回的依旧是
# 列表
>>> df[df.columns[:2]]
     name  score
id              
a     bog     45
b   jiken     67
c     bob     23
d   jiken     34
e    lucy     98
f    tidy     75

# 获取后两列
>>> df[df.columns[-2:]]
    score grade
id             
a      45     A
b      67     B
c      23     A
d      34     B
e      98     A
f      75     B

3、使用切片形式

使用切片形式,必须是行标识或者行的坐标

>>> df
     name  score grade
id                    
a     bog     45     A
b   jiken     67     B
c     bob     23     A
d   jiken     34     B
e    lucy     98     A
f    tidy     75     B

# 如果切片使用的是行标识,例如
# 'a':'c'结果是包含c行的
>>> df['a':'c']
     name  score grade
id                    
a     bog     45     A
b   jiken     67     B
c     bob     23     A

# 如果使用行的坐标,则功能更加强大

# 获取第一行及以后的数据
>>> df[1:]
     name  score grade
id                    
b   jiken     67     B
c     bob     23     A
d   jiken     34     B
e    lucy     98     A
f    tidy     75     B

# 获取前两行
>>> df[:2]
     name  score grade
id                    
a     bog     45     A
b   jiken     67     B

# 获取坐标为偶数的行
>>> df[0::2]
    name  score grade
id                   
a    bog     45     A
c    bob     23     A
e   lucy     98     A

# 倒序排列
>>> df[::-1]
     name  score grade
id                    
f    tidy     75     B
e    lucy     98     A
d   jiken     34     B
c     bob     23     A
b   jiken     67     B
a     bog     45     A

哈哈,以上就是python小工具关于df[]的介绍。总结就是:它是用于获取整行或者整列的数据。对于列表以及单字符形式的入参需要输入的是列标识,对于分片,它需要的是行标识或者行的坐标。哈哈,有兴趣欢迎关注微信公众号:python小工具。一起学习pandas和python在这里插入图片描述

  • 7
    点赞
  • 40
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值