【python】python编程基础

基础工具包

  • python 原生数据结构
    • 元组 Tuple
    • 列表 list
    • 集合 set
    • 字典 dictionary
  • NumPy 数据结构
    • 数组 Ndarray
    • 矩阵 Matrix
  • Pandas 数据结构
    • 序列 Series (一维)
    • 数据框 DataFrame (二维)
  • Matplotlib 数据可视化
    • 绘制饼图
    • 绘制折线图
    • 绘制直方图
    • 绘制散点图
    • 绘制箱型图
    • 使用 DataFrame 绘图
      • 折线图
      • 横柱形图
      • 柱形图
      • 面积图
      • 散点图
      • 饼图
      • 二维直方图

python 原生数据结构

元组 Tuple

一个元素不可修改的线性数据结构,数据项放在 () 内。

(1)元组的创建形式

tup1=("manhman","guoguo",1988,2000)
tup2=(1,)
tup3="a","b","c","d"
tup4=()seq=['a','b','c']
tup5=tuple(seq)

在这里插入图片描述

其中,元组一旦创建就不能修改其中某一个元素的信息

(2)元组的查询

可以通过下标访问到元组中的每个元素
在这里插入图片描述

(3)元组的删除

元组一旦创建成功之后,元组内的数据是不可被修改的,要删除元组中某个元素也是不被允许的,只能整体删除元组

在这里插入图片描述

(4)元组的链接

可以将多个元组合并为一个元组
在这里插入图片描述

也可以将一个元组复制多份
在这里插入图片描述
(5)tuple 的特殊操作

计算元组长度,以及最大最小值:
在这里插入图片描述
元组内元素类型的转换:

在这里插入图片描述

列表 list

一个有序且可变长度的线性数据结构,列表项放在 [] 内。

(1)列表的创建
在这里插入图片描述
(2)列表的查询

在这里插入图片描述
(3)列表增加元素

在这里插入图片描述

(4)列表的删除

在这里插入图片描述

(5)列表的修改

在这里插入图片描述

(6)列表特殊操作
在这里插入图片描述
同样也可以进行强制类型转换

在这里插入图片描述

集合 set

一个元素无序且元素不可重复的数据结构,集合中的元素放在 {} 内。

(1)集合的创建

在这里插入图片描述

(2)集合查询
在这里插入图片描述
(3)集合增加

add 将整个元素信息直接进行插入,若要插入的元素存在则无意义;
update 是将元素一个一个进行插入
在这里插入图片描述

(4)集合删除

remove() 函数可以删除指定元素,若要删除元素不存在则会报错;
discard() 函数可以删除指定元素,若元素不存在不报错;
pop() 函数是随机删除一个元素;
clear() 将整个集合进行清空

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
(5)集合特殊操作

在这里插入图片描述

在这里插入图片描述

字典 dictionary

一组具有多个键值对组成的数据结构,形式为:{键1:值1, 键2:值2, …}

(1)创建字典
在这里插入图片描述

(2)字典查询
在这里插入图片描述

(3)字典增加
在这里插入图片描述

(4)字典删除
在这里插入图片描述
(5)字典的修改
在这里插入图片描述

NumPy 数据结构

数组 Ndarray

引入 Numpy 包,将其命名为 np
import Numpy as np

(1)数组的创建
在这里插入图片描述
(2)数组查询

在这里插入图片描述

在这里插入图片描述

(3)数组增加

在这里插入图片描述
(4)数组删除

在这里插入图片描述
(5)数组修改

在这里插入图片描述

(6)特殊操作

数组的转置

在这里插入图片描述

数组的堆叠

在这里插入图片描述

矩阵 Matrix

(1)矩阵创建

在这里插入图片描述
在这里插入图片描述

(2)矩阵查询

在这里插入图片描述

在这里插入图片描述

(3)矩阵增加

在这里插入图片描述

(4)矩阵删除

在这里插入图片描述

(5)矩阵乘法

在这里插入图片描述

(6)矩阵转置,求逆

在这里插入图片描述

(7)矩阵的特征向量,特征值

在这里插入图片描述

Pandas 数据结构

pandas 包中的数据结构主要包含 序列(Series)、(DataFrame)

import pandas as pd

序列 Series (一维)

(1)创建序列

在这里插入图片描述
在这里插入图片描述

(2)序列查询

在这里插入图片描述

(3)序列追加

在这里插入图片描述

(4)序列删除

在这里插入图片描述

(5)序列修改

在这里插入图片描述

(6)特殊操作

在这里插入图片描述

在这里插入图片描述
在这里插入图片描述

创建时间序列

在这里插入图片描述

数据框 DataFrame (二维)

(1)创建

在这里插入图片描述
在这里插入图片描述

在这里插入图片描述
(2)查询

在这里插入图片描述
(3)增加操作

在这里插入图片描述

在这里插入图片描述

(4)删除操作

在这里插入图片描述

(5)合并操作

dic1={'name':['liuli','tony','jesper'],'no':['001','002','003'],'age':[12,13,14]}
dir1=pd.DataFrame(dic1)
print('\ndir1:\n',dir1)dic2={'new_chat':['should','may','substr']}
dir2=pd.Series(dic2)
print('\ndir2:\n',dir2)dir3=pd.concat([dir1,dir2],axis=1)   # 列合并
print('\n合并之后:\n',dir3)
dic1={'name':['liuli','tony','jesper'],'no':['001','002','003'],'age':[12,13,14]}
dir1=pd.DataFrame(dic1)
print('\ndir1:\n',dir1)dic2={'name':['wangwa'],'no':['004'],'age':[35]}
dir2=pd.DataFrame(dic2)
print(dir2)dir3=pd.concat([dir1,dir2],axis=0,ignore_index=True)   # 行合并
print('\n合并之后:\n',dir3)

在这里插入图片描述

Matplotlib 数据可视化

绘制饼图

plt.pie()


import numpy as np
import pandas as pd
import matplotlib.pyplot as plt# 使用 pandas 包内部读取数据文件
sdata=pd.read_csv('./sdata.csv',encoding='utf-8',index_col=0)
print(sdata.head())          # 展示前五行数据plt.rcParams['font.sans-serif']='SimHei'  # 设置中文字体
plt.rcParams['axes.unicode_minus']=False   # 正常显示负号
plt.figure(figsize=(5,5))  # 窗口大小
plt.title('2018年5月21日~29日成交量饼图')label=(0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35)plt.pie(sdata.volume,labels=label)   # 饼图
plt.grid(True)
plt.show()   # 展示图形

在这里插入图片描述

绘制折线图

plt.plot()

#折线图
plt.plot(sdata.open,'r-',marker='o',label='open')
plt.plot(sdata.high,'b--',marker='*',label='high')
plt.plot(sdata.close,'g',marker='^',label='close')plt.legend(loc=0)   # 设置左上角标签
plt.grid(True)
plt.xlabel('index')
plt.ylabel('value')
plt.title('Sdata Trend')
plt.show()

在这里插入图片描述

绘制直方图

plt.bar()

# 直方图
label=(0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35)
plt.bar(label,sdata.volume,color='g',width=0.5)
plt.grid(True)
plt.xlabel('index')
plt.ylabel('volume')
plt.title('2018.5.21~2018.5.29')
plt.show()

在这里插入图片描述

绘制散点图

plt.scatter

# 散点图
label=(0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35)
plt.scatter(label,sdata.low,marker='o')
plt.show()

在这里插入图片描述

绘制箱型图

plt.boxplot()


#箱型图
plt.boxplot((sdata.open,sdata.high,sdata.close),labels=('open','high','close'))
plt.show()

在这里插入图片描述
箱型图,从下往上分别代表数据的最小值,25%值区间,50%值区间,75%值区间,以及数据的最大值

使用 DataFrame 绘图

折线图

# DataFrame 绘图-----折线图
# 随机生成一个 10*3 的DataFrame 数据框,时间范围在 1~10
plot_df=pd.DataFrame(np.random.randint(1,10,30).reshape(10,3), columns=list('abc'))
plot_df.head()plot_df.plot(subplots=True,figsize=(5,5))
plt.show()

在这里插入图片描述

横柱形图

# DataFrame 绘图----横柱形图
plot_df.plot(kind='barh')
plt.show()

在这里插入图片描述

柱形图

# DataFrame绘图 - ---横柱形图
plot_df.plot(kind='bar',stacked=True)
plt.show()

在这里插入图片描述

面积图

# DataFrame绘图 - ---面积图
plot_df.plot(kind='area')
plt.show()

在这里插入图片描述

散点图

# DataFrame绘图 - ---散点图
plot_df.plot('a','b',kind='scatter')
plt.show()

在这里插入图片描述

饼图

# DataFrame绘图 - ---饼图
plot_df['a'].plot(kind='pie')
plt.show()

在这里插入图片描述

二维直方图

# DataFrame绘图 - ---二维直方图
plot_df2=pd.DataFrame(np.random.randn(1000,2),columns=['a','b'])
plot_df2.plot.hexbin(x='a',y='b',gridsize=25)
plot_df2.head()   # 展示前五行数据
plt.show()

在这里插入图片描述

二维直方图可以想象为俯视的直方图

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/7909.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

git学习使用技巧

目录 关于版本控制 本地版本控制系统 集中化的版本控制系统 分布式版本控制系统 Git 是什么 直接记录快照,而非差异比较 近乎所有操作都是本地执行 Git 保证完整性 Git 一般只添加数据 三种状态 起步 - 初次运行 Git 前的配置 初次运行 Git 前的配置 用户…

软件测试流程扫盲:V/W/H模型,测试左移测试右移

一、软件测试模型 (一)V模型 V模型是瀑布模型的一种改进V模型标明了测试过程中的不同阶段 1.V模型每个测试阶段的测试内容 单元测试:类、函数 集成测试:接口 系统测试:前期测功能有没有满足需求,后期满…

Excelize 是 Go 语言编写的用于操作 Office Excel 文档基础库

介绍 Excelize 是 Go 语言编写的用于操作 Office Excel 文档基础库,基于 ECMA-376,ISO/IEC 29500 国际标准。可以使用它来读取、写入由 Microsoft Excel™ 2007 及以上版本创建的电子表格文档。支持 XLAM / XLSM / XLSX / XLTM / XLTX 等多种文档格式&a…

Meta为打造元宇宙不惜下血本:VR开发者年薪高达百万美元

7 月 2 日消息,尽管 2023 年被 Meta 称为“效率年”,但事实证明 Meta 正在以高得离谱的薪水吸引 VR 人才。据《华盛顿邮报》报道,该公司为了吸引优秀的 VR 开发者,提供了高达百万美元的年薪,远超市场水平。 报道援引知…

隐藏菜单之菜单和搜索

先看效果&#xff1a; 再看代码&#xff1a; <!DOCTYPE html> <html lang"en"> <head><meta charset"UTF-8"><title>菜单</title><style>/* css代码开始*/* {margin: 0;padding: 0;box-sizing: border-box;}b…

泰迪智能科技基于产业技能生态链学生学徒制的双创工作室--促进学生高质量就业

据悉&#xff0c;6月28日&#xff0c;广东省人力资源和社会保障厅在广东岭南现代技师学院举行广东省“产教评”技能生态链建设对接活动。该活动以“新培养、新就业、新动能”为主题&#xff0c;总结推广“产教评”技能人才培养新模式&#xff0c;推行“岗位培养”学徒就业新形式…

matlab 使用预训练神经网络和SVM进行苹果分级(带图形界面)支持其他物品图片分级或者分类

目录 数据集&#xff1a; 实验代码&#xff1a;alexnet版 如果你的matlab不是正版&#xff0c;先看这里&#xff1a; 数据集结构&#xff1a; 训练代码&#xff1a; 训练结果&#xff1a; 图形界面&#xff1a; 界面展示&#xff1a; 其他&#xff1a; 输出结果: 实验…

使用OpenCV工具包成功实现人脸检测与人脸识别,包括传统视觉和深度学习方法(附完整代码,吐血整理......)

使用OpenCV工具包实现人脸检测与人脸识别&#xff08;吐血整理&#xff01;&#xff09; OpenCV实现人脸检测OpenCV人脸检测方法基于Haar特征的人脸检测Haar级联检测器预训练模型下载Haar 级联分类器OpenCV-Python实现 基于深度学习的人脸检测传统视觉方法与深度学习方法对比 O…

WORDPRESS REST API 学习,使用VSCode 的 REST client 插件测试

WORDPRESS 的 REST API 本身是没有身份验证的&#xff0c;我安装了 miniOrange 的 WordPress REST API Authentication 免费部分只有 Basic Authentication 和 JWT Authentication &#xff0c; 作为学习 REST API 够用了。 一般使用 postman 测试 api &#xff0c;后来卸载了…

【OpenGL】读取视频并渲染

&#x1f60f;★,:.☆(&#xffe3;▽&#xffe3;)/$:.★ &#x1f60f; 这篇文章主要介绍读取视频并渲染。 学其所用&#xff0c;用其所学。——梁启超 欢迎来到我的博客&#xff0c;一起学习&#xff0c;共同进步。 喜欢的朋友可以关注一下&#xff0c;下次更新不迷路&#…

使用 Elasticsearch

了解如何创建索引&#xff0c;添加&#xff0c;删除&#xff0c;更新文档 参考文档 开始使用 Elasticsearch 1 本文用到Elasticsearch和Kibana 可以看之前的两篇先安装好 Elasticsearch 安装 Kibana安装 Elasticsearch 里的接口都是通过 REST 接口来实现的。 GET 读取数…

你值得拥有——流星雨下的告白(Python实现)

目录 1 前言 2 霍金说移民外太空 3 浪漫的流星雨展示 4 Python代码 1 前言 我们先给个小故事&#xff0c;提一下大家兴趣&#xff1b;然后我给出论据&#xff0c;得出结论。最后再浪漫的流星雨表白代码奉上&#xff0c;还有我自创的一首诗。开始啦&#xff1a; 2 霍金说移民外…