数据分析Pandas

文章目录


前言

提示:以下是本篇文章正文内容,下面案例可供参考

一、pandas是什么?

示例:pandas 是基于NumPy 的一种工具,该工具是为了解决数据分析任务而创建的。

整个数据被分为三部分:行索引(index),列索引(columns)及数据内容(data)。

行、列索引的值在没有自定义的时候,会被默认设置上0-N的值,索引的作用就是为了更好的认知和查询数据。

二、Panda的安装和引入

1.安装

pip install pandas

2引入pandas

代码如下(示例):

# 导入pandas模块
import pandas as pd

#通过Series存储每个英雄的基本信息
#创建Series
s1 = pd.Series([1001,'鲁班','18','150.00','男'])
s2 = pd.Series([1002,'小乔','19','167.00','女'])
s3 = pd.Series([1003,'关羽','30','180.00','男'])
s4 = pd.Series([1004,'蔡文姬','20','160.00','女'])
s5 = pd.Series([1005,'兰陵王','22','165.00','男'])

series_list=[s1,s2,s3,s4,s5]

#创建一个DataFrame对象存储通讯录
df=pd.DataFrame(series_list)

# 打印刚刚构造的DataFrame
print(df)

三、Series(Pandas的基本对象)

1.Series的创建

Series是Pandas中最基本的对象,Series类似一种一维数组。能为数据自定义标签,也就是索引(index),然后通过索引来访问数组中的数据。

1.使用默认索引的示例:

# 导入Series
from pandas import Series,DataFrame

# 创建Series,使用默认索引
sel =  Series(data=[1,'TheShy',20,'天不生theshy,LPL上单万古如长夜'])
print(sel)

运行结果:

在这里插入图片描述


一个Series其实就是一条数据,Series方法的第一个参数是data,第二个参数是index(索引),如果没有传值会使用默认值(0-N)。

2.带索引参数的示例:

# 导入Series
from pandas import Series,DataFrame

# 创建Series,使用自定义索引
sel =  Series(data=[1,'TheShy',20,'天不生theshy,Lpl上单万古如长夜'],
              index = ['排名','ID号','年龄','评语'])
print(sel)

运行结果:

在这里插入图片描述

所以Series可以传列表进去,使用默认索引,也可以将map集合传进去,索引为键,data为值。

2.常用的属性与方法

A.获取数据,索引的值,以及每对索引和值键值对。

from pandas import Series
emp=['001','002','003','004','005','006']
name=['亚瑟', '后裔','小乔','哪吒' ,'虞姬','王昭君']
series = Series(data=name,index=emp)

# 获取数据的值
print(series.values)
# 获取索引的值
print(series.index.tolist())
# 获取每对索引和值
print(list(series.items()))

在这里插入图片描述

values、index、items返回的对象分别是List、Index、Zip类型的数据,为了方便我们使用和观察数据,可以使用series.index.tolist()和list(series.items())方法转化成List类型。

B.根据索引获取单个数据,多个连续,不连续的数据

from pandas import Series
emp=['001','002','003','004','005','006']
name=['亚瑟', '后裔','小乔','哪吒' ,'虞姬','王昭君']
series = Series(data=name,index=emp)

# 使用索引值获取单个数据
print(series['001'])

# 使用索引值获取多个不连续的数据
print('索引下标',series[['002','004']])

# 使用切片获取连续的数据
print('索引切片',series['001':'004'])

在这里插入图片描述

不连续是用 ‘,’区分,双括号,切片是用:区分,单括号

3.遍历Series

# 遍历并拿到data数据
for value in series:
    print(value)
# 通过keys(),遍历Series的索引:
# 遍历并拿到index数据
for value in series.keys():
    print(value)
# 也可以通过items(),遍历Series的每对索引和数据
# 遍历并拿到每对索引和数据
for value in series.items():
    print(value)

在这里插入图片描述

四、DataFrame(相当于多个Series)

1.DataFrame的创建

DataFrame(数据表)是一种 2 维数据结构,数据以表格的形式存储,分成若干行和列。类似Excel或者SQL中的表格。

调用DataFrame()可以将多种格式的数据转换为DataFrame对象,它的的三个参数data、index和columns分别为数据、行索引和列索引。

1.默认索引示例:

from pandas import Series,DataFrame

# 创建二维列表存储选手信息
lol_list = [['上单','TheShy',20],
            ['打野','小天',19],
            ['中单','Faker',23],
            ['ADC','Uzi',22],
            ['辅助','Ming',21]]
# 创建dataframe
df = DataFrame(data=lol_list)
print(df)

运行结果:

在这里插入图片描述


2.带索引参数示例:

dic={
   
    '位置': ['上单', '打野', '中单', 'ADC','辅助'],
    'ID号': ['TheShy', '小天', 'Faker', 'Uzi', 'Ming'],
    'year': [20, 19, 23, 22,21]}
df=pd.DataFrame(dic)
print(df)


运行结果:

在这里插入图片描述

3.使用字典创建示例(最好用):

from pandas import Series,DataFrame
import pandas as pd

# 使用字典创建
index_list = ['No1','No2','No3']
dic={
   
    '姓名': Series(['娜娜','淼淼','依依'],index=index_list),
    '类型': Series(['可爱单纯','风骚火辣','性感高冷'],index=index_list),
    '爱好': Series(['逛街、电影、爱吃甜','喝酒、蹦迪、爱吃辣','看书、烘焙、爱吃酸'],index=index_list),
    '时间': Series(['2019-2-14去看电影','2019-2-16去蹦迪','2019-2-18去烘焙'],index=index_list)
    }
df=DataFrame(dic)
print(df)
  • 0
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值