Pandas库:从入门到应用(一)--数据结构及基础函数

这篇具有很好参考价值的文章主要介绍了Pandas库:从入门到应用(一)--数据结构及基础函数。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

一、Pandas简介

pandas应用,python,pandas,数据分析,python

  • pandas是 Python 的核⼼数据分析⽀持库,提供了快速、灵活、明确的数据结构,旨在简单、直观地处理关系型、标记型数据。pandas是Python进⾏数据分析的必备⾼级⼯具。

  • pandas的主要数据结构是 Series(⼀维数据)与 DataFrame (⼆维数据),这两种数据结构⾜以处理⾦融、统计、社会科学、⼯程等领域⾥的⼤多数案例

  • 处理数据⼀般分为⼏个阶段:数据整理与清洗、数据分析与建模、数据可视化与制表,Pandas 是处理数据的理想⼯具

二、Pandas 安装验证
2.1、本地wendows或linux直接pip安装
pip install pandas -i https://pypi.tuna.tsinghua.edu.cn/simple

pandas应用,python,pandas,数据分析,python

2.2、登入python验证
import pandas as pd ## 没有报错说明pandas安装成功

pandas应用,python,pandas,数据分析,python

三、Pandas 的数据结构
3.1、Series

Series对象用来表示一维数据结构 ,和常规的数组类型,但是Series的内部结构是包含了两个数组

一个是用来保存数据(data),一个是用来保存数据的索引(index)

pandas.Series( data, index, dtype, name, copy)

参数说明:

  • data:一组数据(ndarray 类型)。
  • index:数据索引标签,如果不指定,默认从 0 开始。
  • dtype:数据类型,默认会自己判断。
  • name:设置名称。
  • copy:拷贝数据,默认为 False。
pd.Series(data=['北京','上海','广州','深圳'],index=[1,2,3,4],dtype='str',name='中国一线城市') 

pandas应用,python,pandas,数据分析,python

如果不指定索引(index)会自动从0开始
pandas应用,python,pandas,数据分析,python

3.2、DataFrame
  • DataFrame 是一个二维数组的数据结构,类似Excel、sql表。

  • DataFrame 既有行索引也有列索引,它可以被看做由 Series 组成的字典(共同用一个索引)。

pandas.DataFrame( data, index, columns, dtype, copy)

参数说明:

  • data:一组数据(ndarray、series, map, lists, dict 等类型)。
  • index:索引值,或者可以称为行标签。
  • columns:列标签,默认为 RangeIndex (0, 1, 2, …, n) 。
  • dtype:数据类型。
  • copy:拷贝数据,默认为 False。
df1 = pd.DataFrame(data = np.random.randint(0,151,size=(3,3)), #
                    index = ['张三','李四','王五'], # ⾏索引
                    columns= ['python','math','english']
                   )

pandas应用,python,pandas,数据分析,python

四、DataFrame的常用属性
4.1、head()函数

显示头部数据,默认显示头部5行数据

import numpy as np
import pandas as pd
df1 = pd.DataFrame(data = np.random.randint(0,151,size=(10,3)), 
                    columns= ['python','math','english']
                   )
df1.head(7) ##显示前7行数据

pandas应用,python,pandas,数据分析,python

4.2、tail()函数

显示尾部数据,默认显示尾部5行数据

df1.tail(5)

pandas应用,python,pandas,数据分析,python

4.3、shape 函数

显示DataFrame数据结构的行数和列数

df1.shape ## (10, 3)
4.4、dtypes 函数

显示各列的数据类型

df1.dtypes

pandas应用,python,pandas,数据分析,python

4.5、index 函数

显示DataFrame数据的行索引,及索引类型

import numpy as np
import pandas as pd
df1 = pd.DataFrame(data = np.random.randint(0,151,size=(10,3)), #
                    index=['张三','大华','小明','李四','小丽','小军','王五','木木','明明','小六子'],
                    columns= ['python','math','english']
                   )
df1.index

pandas应用,python,pandas,数据分析,python

4.6、columns 函数

显示DataFrame数据的列索引,及索引类型

df1.columns

pandas应用,python,pandas,数据分析,python

4.7、values 函数

显示DataFrame数据的二维ndarray数组

df1.values

pandas应用,python,pandas,数据分析,python

4.8、describe() 函数

查看数值型列的汇总统计,计数、平均值、标准差、最⼩值、四分位数、最⼤值

df1.describe()

pandas应用,python,pandas,数据分析,python

4.9、info() 函数

查看列索引、数据类型、⾮空计数和内存信息

df1.info()

pandas应用,python,pandas,数据分析,python

五、Pandas 数据输入与输出
5.1、操作csv文件
5.1.1、写入csv文件
import numpy as np
import pandas as pd
df1 = pd.DataFrame(data = np.random.randint(0,151,size=(10,3)), #
                    index=['张三','大华','小明','李四','小丽','小军','王五','木木','明明','小六子'],
                    columns= ['python','math','english']
                   )

df1.to_csv('./score.csv',
           sep = ',', # ⽂本分隔符,默认是逗号
           header = True,# 是否保存列索引
           index = True, # 是否保存⾏索引,保存⾏索引,⽂件被加载时,默认⾏索引会作为⼀列
           index_label= '姓名')  # 设置index列的名称

pandas应用,python,pandas,数据分析,python

5.1.2、读取csv文件
import numpy as np
import pandas as pd
pd.read_csv('./score.csv',
            sep = ',',# 默认是逗号
            header = [0],#指定列索引
            index_col=0) # 指定⾏索引

pd.read_table('./score.csv', # 和read_csv类似,读取限定分隔符的⽂本⽂件
              sep = ',',
              header = [0],#指定列索引
              index_col=0) # 指定⾏索引

pandas应用,python,pandas,数据分析,python

5.2、操作Excel文件
5.2.1、下载Excel的包
pip install xlrd -i https://pypi.tuna.tsinghua.edu.cn/simple
pip install xlwt -i https://pypi.tuna.tsinghua.edu.cn/simple

pandas应用,python,pandas,数据分析,python

5.2.2、写入Excel文件
import numpy as np
import pandas as pd
import xlrd
df1 = pd.DataFrame(data = np.random.randint(0,50,size = [50,5]), # 薪资情况
                   columns=['IT','化⼯','⽣物','教师','⼠兵'])
# 保存到当前路径下,⽂件命名是:salary.xls
df1.to_excel('./salary.xls',
             sheet_name = 'salary',# Excel中sheet⼯作表的名字
             header = True,# 是否保存列索引
             index = True,# 是否保存⾏索引
             index_label= '编号' # 设置index列的名称
             )

pandas应用,python,pandas,数据分析,python

5.2.3、⼀个Excel⽂件中保存多个⼯作表
import numpy as np
import pandas as pd
import xlrd
import xlwt
import openpyxl
df1 = pd.DataFrame(data = np.random.randint(0,50,size = [50,5]), # 薪资情况
                   columns=['IT','化⼯','⽣物','教师','⼠兵'])
df2 = pd.DataFrame(data = np.random.randint(0,50,size = [150,3]),# 计算机科⽬的考试成绩
                   columns=['Python','Tensorflow','Keras'])

# ⼀个Excel⽂件中保存多个⼯作表
with pd.ExcelWriter('./data.xls') as writer:
    df1.to_excel(writer,sheet_name='salary',index = False)
    df2.to_excel(writer,sheet_name='score',index = False)

pandas应用,python,pandas,数据分析,python

5.2.4、读取Excel文件
import numpy as np
import pandas as pd
import xlwt

pd.read_excel('./salary.xls',
              sheet_name=0,# 读取哪⼀个Excel中⼯作表,默认第⼀个
              header = 0,# 使⽤第⼀⾏数据作为列索引
              index_col=0)# 指定⾏索引,A作为⾏索引

pandas应用,python,pandas,数据分析,python

pd.read_excel('./data.xls',
 sheet_name='salary') # 读取Excel中指定名字的⼯作表

pandas应用,python,pandas,数据分析,python

5.3、操作HDF5文件
5.3.1、HDF5简介及安装
  • HDF5是⼀个独特的技术套件,可以管理⾮常⼤和复杂的数据收集。
  • HDF5可以存储不同类型数据的⽂件格式,后缀通常是.h5,它的结构是层次性的。
  • HDF5⽂件可以被看作是⼀个组包含了各类不同的数据集
pip install tables -i https://pypi.tuna.tsinghua.edu.cn/simple

pandas应用,python,pandas,数据分析,python

5.3.2、HDF5架构

对于HDF5⽂件中的数据存储,有两个核⼼概念:group 和 dataset

dataset :代表数据集,⼀个⽂件当中可以存放不同种类的数据集,

group:最直观的理解,可以参考我们的⽂件管理系统,不同的⽂件位于不同的⽬录下,⽬录就是HDF5中的group

pandas应用,python,pandas,数据分析,python

5.3.2、写入HDF5文件
import numpy as np
import pandas as pd

df1 = pd.DataFrame(data = np.random.randint(0,50,size = [50,5]), # 薪资情况
                   columns=['IT','化⼯','⽣物','教师','⼠兵'])
df2 = pd.DataFrame(data = np.random.randint(0,50,size = [150,3]),# 计算机科⽬的考试成绩
columns=['Python','Tensorflow','Keras'])
# 保存到当前路径下,⽂件命名是:data.h5
df1.to_hdf('./data.h5',key='salary') # 保存数据的key,标记
df2.to_hdf('./data.h5',key = 'score')

.h5文件没法直接打开,打开全都乱码了,但是还是看到有HDF的标识

pandas应用,python,pandas,数据分析,python

5.3.3、读取HDF5文件
pd.read_hdf('./data.h5',key='score')

pandas应用,python,pandas,数据分析,python文章来源地址https://www.toymoban.com/news/detail-643537.html

到了这里,关于Pandas库:从入门到应用(一)--数据结构及基础函数的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 【数据结构】树的基础入门

    相信大家刚学数据结构的时候最先接触的就是顺序表,栈,队列等线性结构. 而树则是一种 非线性 存储结构,存储的是具有“ 一对多 ”关系的数据元素的集合 非线性 体现在它是由n个有限结点 (可以是零个结点) 组成一个具有层次关系的集合。把它叫做树是因为它看起来像一棵倒

    2024年02月09日
    浏览(40)
  • 【数据结构】二叉树基础入门

    💐 🌸 🌷 🍀 🌹 🌻 🌺 🍁 🍃 🍂 🌿 🍄🍝 🍛 🍤 📃 个人主页 :阿然成长日记 👈点击可跳转 📆 个人专栏: 🔹数据结构与算法🔹C语言进阶 🚩 不能则学,不知则问,耻于问人,决无长进 🍭 🍯 🍎 🍏 🍊 🍋 🍒 🍇 🍉 🍓 🍑 🍈 🍌 🍐 🍍 一棵二叉树是结点的

    2024年02月09日
    浏览(41)
  • Python中List类型数据结构广泛应用于各种场景中。然而,在数据分析和可视化过程中,经常需要将List转换为Pandas的DataFrame对象。那么如何将...

    Python中List类型数据结构广泛应用于各种场景中。然而,在数据分析和可视化过程中,经常需要将List转换为Pandas的DataFrame对象。那么如何将List转换为DataFrame对象呢?本文将介绍如何使用Python中Pandas库将List转换为DataFrame,并进一步将其转换为字符串。 将Python List转换为Pandas D

    2024年02月15日
    浏览(52)
  • Python基础数据结构入门必读指南

    作者主页:涛哥聊Python 个人网站:涛哥聊Python 大家好,我是涛哥,今天为大家分享的是Python中常见的数据结构。 含义:数组是一种有序的数据结构,其中的元素可以按照索引来访问。数组的大小通常是固定的,一旦创建就不能更改。 基本操作: 含义:列表是Python中内置的

    2024年02月07日
    浏览(56)
  • 【图论基础数据结构及其应用】

    本文主要介绍Java中图论基础数据结构的基本原理、实现方式以及使用场景。图论是研究非线性方程组及其解的数学领域,广泛应用于计算机科学中,如网络拓扑、交通网络、地理信息系统等。 图是由节点(Vertex)和边(Edge)组成的数据结构。节点表示图中的对象或实体,而

    2024年02月12日
    浏览(53)
  • 数据结构入门(C语言版)图的概念和功能函数实现

    图是一种比线性表和树更复杂的数据结构。在线性表中,数据元素之间仅有 线性关系每个元素 只有 一个直接前驱 和 一个直接后继 。在树形结构中,数据元素之间存在明显的层次关系,并且每层的元素可能和下一层的多个元素(即其孩子结点)相邻,但只能和上一层的个元素(即其

    2024年02月06日
    浏览(51)
  • 数据结构从入门到实战——顺序表的应用

    目录 一、基于动态顺序表实现通讯录 二、代码实现 2.1 通讯录的初始化 2.2 通讯录的销毁  2.3 通讯录的展示 2.4 通讯录添加联系人信息 2.5 通讯录删除联系人信息 2.6 通讯录修改联系人信息  2.7 通讯录的查找联系人信息 2.8 将通讯录中联系人信息保存到文件中  2.9 从文件中

    2024年04月25日
    浏览(36)
  • 数据结构零基础入门篇(C语言实现)

    前言:数据结构属于C++学习中较难的一部分,对应学习者的要求较高,如基础不扎实,建议着重学习C语言中的指针和结构体,万丈高楼平地起。 目录:   一,链表 1)单链表的大致结构实现 2)单链表的思考(然后找到链表和判断链表的结束) 3)单链表的程序实现及源代码

    2024年02月09日
    浏览(40)
  • 【数据结构】C--单链表(小白入门基础知识)

    前段时间写了一篇关于顺序表的博客,http://t.csdn.cn/0gCRp 顺序表在某些时候存在着一些不可避免的缺点: 问题: 1. 中间 / 头部的插入删除,时间复杂度为 O(N) 2. 增容需要申请新空间,拷贝数据,释放旧空间。会有不小的消耗。 3. 增容一般是呈 2 倍的增长,势必会有一定的空间

    2024年02月16日
    浏览(51)
  • 【玩转pandas系列】pandas数据结构—Series

    大家好!我是一朵向阳花(花花花),本期跟大家分享的知识是 pandas 数据结构——Series。 作者的【 Python 数据分析】专栏正在火热更新中,如果本文对您有帮助,欢迎大家点赞 + 评论 + 收藏 ! 每日金句分享: 愿你有一天,能和你最重要的人重逢。』—— 艾拉「可塑性记忆

    2024年02月15日
    浏览(41)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包