码农知识堂 - 1000bd
  •   Python
  •   PHP
  •   JS/TS
  •   JAVA
  •   C/C++
  •   C#
  •   GO
  •   Kotlin
  •   Swift
  • Python与数据分析--Pandas-1


    目录

    1.Pandas简介

    2.Series的创建

    1.通过数组列表来创建

    2.通过传入标量创建

    3.通过字典类型来创建 

     4.通过numpy来创建

    3.Series的索引和应用

    1. 通过index和values信息

    2. 通过切片方法获取信息

    4.DataFrame的创建

    1.直接创建

    2.矩阵方式创建

    3.字典类型创建

    5.DataFrame的索引和应用

    1.DataFrame的索引信息提取

    2.DataFrame的数据选择

    3.索引器操作实例

    1.Pandas简介

    1. #Pandas简介
    2. """
    3. Pandas(Panel data analysis)是一个强大的分析结构化数据的工具集,
    4. 使Python成为高效的数据分析环境。
    5. 1.Pandas的基础是NumPy(提供高性能的矩阵运算)
    6. 2.Pandas可用于数据挖掘和数据分析,同时也提供数据清洗功能
    7. 3.Pandas提供Series、DataFrame等数据结构
    8. DataFrames:二维数据,整个表格,多行多列
    9. Series:一维数据,一行或者一列
    10. """

    2.Series的创建

    1. import numpy as np
    2. import pandas as pd
    3. import matplotlib.pyplot as plt
    4. list1=[4,3,-3,10]

    1.通过数组列表来创建

    1. #Series的创建
    2. a_ser=pd.Series(list1)
    3. a_ser#一列是索引,一列是数值

    2.通过传入标量创建

    1. #传入标量
    2. s=pd.Series(22)
    3. s=pd.Series(22,['a','b','c'])
    4. s

    3.通过字典类型来创建 

    1. #通过字典来创建Series
    2. a_dic={'a':92,'b':45,'c':33}
    3. a=pd.Series(a_dic)
    4. a
    5. %%
    6. #传入字典并且自定义索引
    7. a=pd.Series({'A':90,'B':90,'C':90},index=['B','C','D'])
    8. a

     4.通过numpy来创建

    1. #通过ndarray
    2. b=pd.Series(np.arange(10,15),index=np.arange(20,25))
    3. b

    3.Series的索引和应用

    1. 通过index和values信息

    1. %%
    2. #通过index和values获取所引和
    3. print(b.index)
    4. print(b.values)
    5. %%
    6. #index对象
    7. b=pd.Series(['A','B','C'])
    8. b
    9. %%
    10. b.index
    11. %%
    12. b.values

    2. 通过切片方法获取信息

    1. %%
    2. a[1:3]
    3. %%
    4. #统计方面的用法
    5. a.mean()
    6. %%
    7. #in函数的用法
    8. #表示如果在Series中返回True,否则返回False
    9. b=dict(a)
    10. b
    11. %%
    12. 'a' in a
    13. 'v' in a
    14. 'b' in a

    4.DataFrame的创建

    1.直接创建

    1. # Dataframe building
    2. # axis=0 axis=1
    3. g=np.random.randint(60,100,(4,2))
    4. g_df=pd.DataFrame(g,index=['Mary','Bob','Lee','Rose'],
    5. columns=['math','chinese'])
    6. g_df

    2.矩阵方式创建

    1. # dataframe -- ndarray()
    2. a_df=pd.DataFrame(np.random.rand(3,4),index=['A','B','C'])
    3. a_df

    3.字典类型创建

    1. g_dic={'math':[96,92,89,90],'chinese':[90,21,89,79]}
    2. b=pd.DataFrame(g_dic,index=['Mary','Bob','Lee','Rose'])
    3. b

    5.DataFrame的索引和应用

    1.DataFrame的索引信息提取

    1. # dataframe -- ndarray()
    2. a_df=pd.DataFrame(np.random.rand(3,4),columns=['x','y','z','v'],index=['one','two','three'])
    3. a_df
    4. %%
    5. # basical actions for DataFrame functions
    6. a_df.index
    7. %%
    8. a_df.columns#列
    9. %%
    10. a_df.values#值
    11. %%
    12. a_df['x']#x列的信息
    13. %%
    14. a_df.T#dateframe转置
    15. %%
    16. a_df[:2]#切片
    17. %%
    18. a_df[['x','v']]#多个切片

    2.DataFrame的数据选择

    1. # DataFrame的数据选择
    2. """
    3. 对DataFrame的数据进行更灵活的选择,Pandas提供索引器(indexer)属性作为取值方法.
    4.  1.使用索引器iloc、loc,提供灵活的索引形式.
    5.  2.可使用loc(自定义索引)或iloc(自动索引)以NumPy风格的语法从DataFrame中选取行和列数据
    6.  3.通过loc和iloc,行、列数据都可以做切片和花式索引.
    7. """
    1. %%
    2. a_df
    3. %%
    4. a_df.loc[['one','two']]#提取前两行
    5. %%
    6. #同时也可以用切片索引
    7. a_df.loc[:,['x','y','z']]
    8. #当然也能够提取一部分

    3.索引器操作实例

    1. #索引器操作实例
    2. s_dic={'Python':[60,99,81,66],'C':[63,69,96,84],'Java':[63,79,83,84]}
    3. score=pd.DataFrame(s_dic,index=['Ann','Bob','Cindy','Lee'])
    4. score
    5. %%
    6. #选择单行或者指定行
    7. score.iloc[[0,2],[0,1]]#numpy的匹配对象(0,0)(2,1)
    8. %%
    9. #.loc
    10. score.loc['Ann':'Cindy']
    11. %%
    12. #.iloc
    13. score.iloc[0:2]
    14. %%
    15. #loc和iloc都可以修改数据
    16. score.loc['Ann','C']=100
    17. score.iloc[2,2]=99
    18. score

  • 相关阅读:
    回溯专题——day33
    供应链计划 SCP - Supply Chain Planning
    双十二购买护眼台灯亮度多少合适?灯光亮度多少对眼睛比较好呢
    暑假给娃买书看?通过爬虫爬取新书评分信息,并通过pandas存入csv文件
    Android移动应用开发之ImageView、ProgressBar和Notification的一些简单使用
    java计算机毕业设计网络课程答疑系统源码+系统+mysql数据库+lw文档+部署
    用c++补全二维数组问题代码
    Android技术知识点:如何使用数据绑定显示数据
    mysql—面试50题—1
    基于PHP的玩偶玩具商城网站设计
  • 原文地址:https://blog.csdn.net/m0_71819746/article/details/133133961
  • 最新文章
  • 攻防演习之三天拿下官网站群
    数据安全治理学习——前期安全规划和安全管理体系建设
    企业安全 | 企业内一次钓鱼演练准备过程
    内网渗透测试 | Kerberos协议及其部分攻击手法
    0day的产生 | 不懂代码的"代码审计"
    安装scrcpy-client模块av模块异常,环境问题解决方案
    leetcode hot100【LeetCode 279. 完全平方数】java实现
    OpenWrt下安装Mosquitto
    AnatoMask论文汇总
    【AI日记】24.11.01 LangChain、openai api和github copilot
  • 热门文章
  • 十款代码表白小特效 一个比一个浪漫 赶紧收藏起来吧!!!
    奉劝各位学弟学妹们,该打造你的技术影响力了!
    五年了,我在 CSDN 的两个一百万。
    Java俄罗斯方块,老程序员花了一个周末,连接中学年代!
    面试官都震惊,你这网络基础可以啊!
    你真的会用百度吗?我不信 — 那些不为人知的搜索引擎语法
    心情不好的时候,用 Python 画棵樱花树送给自己吧
    通宵一晚做出来的一款类似CS的第一人称射击游戏Demo!原来做游戏也不是很难,连憨憨学妹都学会了!
    13 万字 C 语言从入门到精通保姆级教程2021 年版
    10行代码集2000张美女图,Python爬虫120例,再上征途
Copyright © 2022 侵权请联系2656653265@qq.com    京ICP备2022015340号-1
正则表达式工具 cron表达式工具 密码生成工具

京公网安备 11010502049817号