pandas基本功能

前言

本节介绍Series 和DataFrame 中基本的数据分析与处理功能。

一、重新索引reindex

Series重新索引

作用一:重新设置数据的索引,并进行排序

#创建series
obj = pd.Series([1, 2, 'test'], index=['b', 'a', 'c'])
print(obj)

#输出
b       1
a       2
c    test
dtype: object

#修改索引并排序
obj1 = obj.reindex(['a', 'b', 'c', 'd'])
print(obj1)

#输出
a       2
b       1
c    test
d     NaN
dtype: object

 作用二:重新设置数据的索引,并进行排序

# 输入
obj3 = pd.Series(['blue', 'yellow', 'red'], index=[0, 2, 5])
print(obj3)

# 输出
0      blue
2    yellow
5       red
dtype: object

# 做插值处理,使用前向值和后向值填充
obj4 = obj3.reindex(range(6), method='ffill')
print(obj4)

obj5 = obj3.reindex(range(6), method='bfill')
print(obj5)

#输出
0      blue
1      blue
2    yellow
3    yellow
4    yellow
5       red
dtype: object

0      blue
1    yellow
2    yellow
3       red
4       red
5       red
dtype: object

DataFrame重新索引

reindex 默认重新索引行,可以支持columns 关键字,重新索引列。但插值只能按行应用。

# 创建DataFrame
frame = pd.DataFrame(np.arange(9).reshape((3, 3)), index=['a', 'c', 'd'],
                     columns= ['name', 'age', 'height'])
#输出
   name  age  height
a     0    1       2
c     3    4       5
d     6    7       8

#重新行索引
frame2 = frame.reindex(['a', 'b', 'c', 'd'])

#输出
   name  age  height
a   0.0  1.0     2.0
b   NaN  NaN     NaN
c   3.0  4.0     5.0
d   6.0  7.0     8.0

#重新列索引
frame3 = frame.reindex(columns = ['name', 'age', 'sex'])

#输出
   name  age  sex
a     0    1  NaN
c     3    4  NaN
d     6    7  NaN

#重新行、列索引
frame4 = frame.reindex(index=['a', 'b', 'c', 'd'],  columns=['name', 'age', 'sex'])

#输出
   name  age  sex
a   0.0  1.0  NaN
b   NaN  NaN  NaN
c   3.0  4.0  NaN
d   6.0  7.0  NaN

#插值处理
frame5 = frame4.reindex(index=['a', 'b', 'd', '
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值