Pandas入门基础--数据分析

一.Pandas的概述

pandas 是 Python 的核心数据分析支持库,它的功能非常强大,不仅提供了快速、灵活、明确的数据结构,而且可以简单、直观地处理关系型、标记型数据。

pandas 的目标是成为 Python 数据分析实践与实战的必备高级工具,其长远目标是成为最强大、最灵活、可以支持任何语言的开源数据分析工具。

二.pandas中Series的应用

s = pd.Series(np.random.rand(5))  # rand()是拟合一个标准正态分布, Series创建数据
print(s.index)  # 获取数据下标
print(s.values)  # 获取数据的值
# 字典:index:value
dic = {'chinese': 90, 'math': 100, 'english': 99}
s1 = pd.Series(dic)  # 通过字典转换
print(s1)
arr = ['chinese', 'math', 'english']
s2 = pd.Series(arr, index=['a', 'b', 'c'])  # 自定义索引
print(s2)

pytharm代码如下:

三.Series的索引和切片

se1 = pd.Series(data=[1, 2, 3, 4], index=list('abcd'))
# 通过索引取值
print(se1[1])
print(se1['a'])
# 取多个不连续的值
print(se1[[2, 3, 1]])  # 用两个括号括起数据,表示取数组
# 取连续的值  索引切片
print(se1[0:2])
print(se1['a':'d'])

pytharm代码如下:

四.Pandas常见的操作

# 按照给定的下标排序,无则为空
s3 = s.reindex([1, 2, 4, 3, 5])
s4 = s.rename(5)  # 重命名
# 增/改
s[5] = 'Numba'  # s[index]=new
print(s)  # 查看原数组
# 删
s5 = s.drop(2)  # 删除有返回值
print(s5)
# 相加对齐
print(s1 + s2)

pytharm代码如下:

五.Pandas中 DataFrame 的使用

df1 = pd.DataFrame(np.random.randint(0, 20, (4, 5)), index=[1, 2, 3, 4], columns=['a', 'b', 'c', 'd', 'e'])
#查看数据
print(df1)
print(df1.shape)  # 打印行
print(df1.columns)  # 打印列
print(df1.index.tolist())  # 转成列表
print(df1.head(3))  # 查看数据前3行
print(df1.tail(3))  # 查看数据后3行
#取值
print(df1[2])
print(df1[[3,2,4]]) #查看多个不连续值
print(df1[1:3]) #切片查看连续的值
print(df1[1]['a'])  #通过坐标取数组的单个值
# loc 和 iloc 函数的用法
print(df1.loc[1,3]) #用通过坐标取数组的单个值
print(df1.loc[:,['a','b']]) #通过坐标取得多行多列的值
print(df1.iloc[1,'c']) #用通过坐标取数组的单个值
print(df1.iloc[:,['a','b']]) #通过坐标取得多行多列的值
#排序
print(df1.sort_index()) #按照索引升序
print(df1.sort_values(by=[1,2,3,4],ascending=False))    #按值降序排序
print(df1.rank(method='first',ascending=False)) #排名
#布尔(bool)索引
print(df1[df1[1]>5])    # 筛选符合条件的数据

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值