利用Pandas进行数据分析(2)——pandas数据基本操作

本文介绍了Pandas中的数据操作,重点讲解了索引的使用,包括序号、切片和不连续索引,详细阐述了.loc、.iloc和.ix等方法。此外,还提到了数据的运算与对齐以及如何处理缺失数据,适合Python数据分析初学者参考。
摘要由CSDN通过智能技术生成

注:此系列参考了梁斌老师的课件和《利用Python进行数据分析》一书。

另外发现了一个小坑:在用notebook导入到csdn中时,是需要先转存为md格式的文件,而且在输出一栏后都要加上一个回车,不然会在csdn的markdown中显示错误,大家可以注意一下。


Pandas数据操作

索引

表:Index的方法和属性

方法 说明
append 连接另一个Index对象,产生一个新的Index对象
diff 计算差集,并得到一个index
intersection 计算交集
union 计算并集
isin 计算一个指示各值是否都包含在参数集合中的布尔型数组
delete 删除索引i处的元素,并得到新的index
drop 删除传入的值,并得到新的index
insert 将元素插入到索引i处,并得到新的index
is_monotonic 当个元素均大于等于前一个元素时,返回true
in_unique 当index没有重复值时,返回true
unique 计算index中唯一值的数组
import pandas as pd

Series索引

关于它的索引其实和Python里其他可迭代的对象索引规则差不多,包括序号索引、切片索引和不连续索引,此处不再过多赘述,值得注意的是以下几种索引

# 布尔索引

ser_bool = ser_obj > 2
print(ser_bool)
print(ser_obj[ser_bool])

print(ser_obj[ser_obj > 2])
a    False
b    False
c    False
d     True
e     True
dtype: bool
d    3
e    4
dtype: int32
d    3
e    4
dtype: int32

表: DataFrame索引

类型 说明
co aligned
obj[val] 选取DataFrame的单个列或者一组列,在一些特殊情况下会比较便利:布尔型数组(过滤行)、切片(行切片)、布尔型DataFrame(根据条件设置值)
obj.ix[val] 选取DataFrame的单个行或一组行
obj.ix[:,val] 选取单个列或列子集
obj.ix[val1,val2] 同时选组行和列
reindex方法 将一个或多个轴匹配到新索引
xs方法 根据标签选取单行或单列,并返回一个series
icol、irow方法 根据证书位置选取单列或单行,并返回一个series
get_value、 set_value方法 根据行标签和列标签选取单个值
import numpy as np

df_obj = pd.DataFrame(np.random.randn(5,4), columns = ['a', 'b', 'c', 'd'])
print(df_obj.head())
          a         b         c         d
0  0.517213 -1.370594  1.937338 -0.541914
1  1.824929 -0.011277  0.071104  0.786259
2 -0.971734  0.186685 -1.048862 -1.145520
3 -0.629289  0.107450  0.192336  1.351482
4 -0.885874 -0.750596 -0.036246  1.189736
# 列索引
print('列索引')
print(df_obj['a']) # 返回Series类型
print(type(df_obj[
  • 2
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值