python·数据分析基础知识

news2024/9/21 19:29:33

numpy

一个数值计算包

python列表与numpy矩阵区别

  • python中修改列表元素和列表相加

for循环 :[x+1 for x in a]
多个元素需要用zip捆绑[x+y for(x,y) in zip(a,b)]

  • numpy矩阵自动进行相应元素计算

np.array()+1各元素+1
a+b各元素相加
a*b矩阵相乘或者是各元素相乘

numpy矩阵

所有操作默认对行进行

生成方式

以行形式默认生成,也就是行向量

  • 直接生成:a = np.array([1,2,3,4])a = np.array([[0,1,2,3],[10,11,12,13]])
  • 列表中产生数组:a = np.array(l)
  • 其他函数:np.zeros(5) np.ones(5) #括号内传个数,默认浮点数

矩阵属性

  • dtype:np.ones(5,dtype="bool") 数组中要求所有元素的 dtype 是一样的
  • astype:强制类型转换:a = a.astype("float") #强制类型转换
  • 总元素个数:a.size

  • 矩阵维度:a.nidm

索引:

  • 普通索引:a[:,1]类似matlab中的索引操作,不过默认索引的单位是行
  • 列表索引:index = [1,2,-3] y = a[index] print(y)传入列表索引特定行

切片操作:

  • 多维度切片:a[0,3:5]
  • 计算前缀和/差技巧:ob = np.array([21000,21800,22240,23450,25000])
    计算公式:ob2 = ob[1:]-ob[:-1]

函数:

注意这些函数传入参数都是numpy中的矩阵
对于多维数组,函数都是默认对行或者对所有元素进行操作

以下对行元素操作

  • argsort函数:np.sort(mv_num)

以下对所有元素操作

  • 求和:np.sum(mv_num)
  • 均值:np.mean(mv_length)
  • 标准差:np.std(mv_length)
  • 相关系数矩阵:np.cov(mv_score,mv_length)注意传入两个行向量

  • 转置:a.T

Pandas

数据分析包,分为两种基本结构

Series 一维数组
DataFrame二维数组

Series

  • 默认生成方式:s = pd.Series([1,3,5,np.nan,6,8])
    在这里插入图片描述

常见函数:

  • 索引设置:s.index = list('abcdef')

因为索引可以不是数值了,所以切片操作更加灵活了

  • 输出数值:s.values

DataFrame

  • 默认生成方式:df = pd.DataFrame(np.random.randn(6,4), index = date, columns = list("ABCD"))

数据集是一个np形式的矩阵,索引和列作为参数给出

常见函数

  • 查看头尾数据:df.head()df.tail(3)默认为5
  • 返回一个np矩阵:df.values

Pandas读取和保存操作

  • 读取excel表格,把index和column也读取进来:df = pd.read_excel(r"C:\Users\Lovetianyi\Desktop\python\作业3\豆瓣电影数据.xlsx",index_col = 0)
  • 存放至当前文件夹:``df.to_excel(“movie_data.xlsx”) `

*索引操作

注意pandas不调用iloc函数默认使用列索引

  • 行索引:df.iloc[0:5]
  • 列索引:df["名字"][:5] 和`df[[“名字”,“类型”]][:5]
  • 条件索引:df[df["产地"] == "美国"][:5] #内部为booldf[(df.产地 == "美国") & (df.评分 > 9)][:5]

条件索引返回满足列条件的行,列索引返回的是对应列

*缺失值处理

排序操作

df.sort_values(by = "投票人数", ascending = False)[:5] #默认从小到大注意dataframe结构的构成,中间的矩阵都是values

统计分析

描述性分析:df.describe()

给出一系列基本的统计值

统计性的函数

pandas默认对列进行求值,这点于numpy不同

在这里插入图片描述

Matplotlib可视化

matplotlib.pyplot包含一系列类似MATLAB中绘图函数的相关函数

绘图函数

  • 显示图片:plt.show() 一般不会直接显示图

绘制函数:plt.plot([1,2,3,4],[1,4,9,16],linewidth = 4.0,"ro") **

  • 属性如下:
    • 线条属性
    • 字符和类型属性
  • 提前修改属性:plt.setp(line,“color”,‘r’,“linewidth”,4)
    在这里插入图片描述
  • 指定坐标轴:plt.axis([xmin, xmax, ymin, ymax])
  • 支持传入多张图:`

子图

figure是窗口,subplot是子图,

  • 子图figure:plt.figure(num)
    这里,figure(1)其实是可以省略的,因为默认情况下plt会自动产生一幅图像。
t1 = np.arange(0.0,5.0,0.1)
t2 = np.arange(0.0,4.0,0.02)

plt.figure(figsize = (10,6))
plt.subplot(211)
plt.plot(t1,f(t1),"bo",t2,f(t2),'k') #子图1上有两条线

plt.subplot(212)
plt.plot(t2,np.cos(2*np.pi*t2),"r--")
plt.show()

具有统计意义图像绘制

直接看笔记查对应参数

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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

爬虫学习4:爬取王者荣耀技能信息

爬虫:爬取王者荣耀技能信息(代码和代码流程) 代码 # 王者荣耀英雄信息获取 import time from selenium import webdriver from selenium.webdriver.common.by import By if __name__ __main__:fp open("./honorKing.txt", "…

C++的UI框架和开源项目介绍

文章目录 1.QT2.wxWidgets3.Dear ImGui 1.QT QT的开源项目:QGIS(地理信息系统) https://github.com/qgis/QGIS?tabreadme-ov-file 2.wxWidgets wxWidgets的开源项目:filezilla https://svn.filezilla-project.org/svn/ wxWidg…

Matplotlib折线图绘制秘籍:让你的数据线条比过山车还刺激!

1. Matplotlib_折线图 折线图(line chart)是我们日常工作中经常使用的一种图表,它可以直观的反应数据的变化趋势 # 导包 import numpy as np import pandas as pd import matplotlib.pyplot as plt# 如果浏览器不显示图片,就需要…

面试场景题系列--(1)如果系统的 QPS 突然提升 10 倍该怎么设计?--xunznux

1. 如果系统的 QPS 突然提升 10 倍该怎么设计? 1.1 硬件的扩展微服务的拆分 如果所有的业务包括交易系统、会员信息、库存、商品等等都夹杂在一起,当流量一旦起来之后,单体架构的问题就暴露出来了,机器挂了所有的业务就全部无法…

kafka集群搭建-使用zookeeper

1.环境准备: 使用如下3台主机搭建zookeeper集群,由于默认的9092客户端连接端口不在本次使用的云服务器开放端口范围内,故端口改为了8093。 172.2.1.69:8093 172.2.1.70:8093 172.2.1.71:8093 2.下载地址 去官网下载,或者使用如…

达梦索引组织表和堆表

达梦数据库默认创建的是索引组织表,‌而Oracle数据库默认创建的是堆表。‌这两种表类型的区别主要体现在数据存储和组织方式上: 索引组织表(‌Index Organized Table, IOT):‌ 索引组织表‌有且仅有一个聚簇索引键。索引组织表也称“普通表”…

UGUI优化篇--UGUI合批

UGUI合批 UGUI合批规则概述UGUI性能查看工具合批部分的特殊例子一个白色image、蓝色image覆盖了Text,白色image和Text哪个先渲染 Mask合批Mask为什么会产生两个drawcallMask为什么不能合批Mask注意要点 RectMask2D为什么RecMask2D比Mask性能更好主要代码RectMask2D注…

【笔记】学习记录

2024年7月23日 1.图的5中存储方式 2.二叉树的先序,中序,后序遍历。 学了图的存储方式之后,二叉树好像就是小菜一碟一样。注意一下名词的顺序就可以了。 所谓先中后序,就是先根,中根,后根的差别。没有其…

数据库练习-3

查询要求: 查询代码:

Apache2服务介绍

apache2 安装使用配置web访问配置虚拟主机配置代理正向代理反向代理 官网 互联网上排名第一的 HTTP 服务器,Apache HTTP 服务器项目致力于开发和维护适用于现代操作系统(包括 UNIX 和 Windows)的开源 HTTP 服务器。该项目的目标是提供安全、…

【系列教程之】1、点亮一个LED灯

1、点亮一个LED灯 作者将狼才鲸创建日期2024-07-23 CSDN教程目录地址:【目录】8051汇编与C语言系列教程本Gitee仓库原始地址:才鲸嵌入式/8051_c51_单片机从汇编到C_从Boot到应用实践教程 本源码包含C语言和汇编工程,能直接在电脑中通过Keil…

SQL性能优化秘籍:如何避免计算导致索引失效

适用于MySQL、PostgreSQL、Oracle等各种数据库的优化技巧 问题剖析 设想我们为customer表的c_acctbal列创建了一个B树索引c_acctbal_idx,以加速相关查询。然而,一个看似无害的计算可能会阻碍索引的使用。比如这样的查询: SELECT * FROM cus…

二次元手游《交错战线》游戏拆解

交错战线游戏拆解案 游戏亮点即核心趣味 一、关键词: 回合制游戏、二次元、机甲、横板、剧情、养成、异星探索。 二、游戏亮点: 符合目标群体审美的原画。 三、核心趣味: 抽卡、肝或者氪金解锁新皮肤。 核心玩法及系统规则 核心玩法&…

海外IP代理科普:代理池有什么用?代理池大小的影响

在当今数字化时代,网络爬虫已经成为获取各类信息必不可少的工具。在大规模数据抓取中,使用单一 IP 地址或同一 IP 代理往往会面临抓取可靠性降低、地理位置受限、请求次数受限等一系列问题。为了克服这些问题,构建代理池成为一种有效的解决方…

【Android Compose】ListView效果

【Android Compose】ListView效果 1、Column、Row 和 Box2、LazyColumn和LazyRow3、Compose 中的状态4、ListView效果5、android-compose-codelabs Jetpack Compose 使用入门 Jetpack Compose 教程 Jetpack Compose 1、Column、Row 和 Box Compose 中的三个基本标准布局元素是 …

C++相关概念和易错语法(24)(map、迭代器分类)

1.map 在上篇文章中,我着重介绍了set,由于map和set同源,所以这次我会着重介绍map别于set的地方 (1)模板参数 set是以单一的key作为成员变量,而map是以pair作为成员变量,而pair的first作为key来…

使用千帆SDK压测千帆大模型平台上的服务

场景 给用户提供千帆标准的压测工具(千帆SDK)。满足以下使用场景: 测试sft模型部署到算力单元后,实际的性能效果 对比模型压缩后的性能效果 测试预置服务的性能 压测数据准备(数据格式规范说明) 可用…

DAY05 CSS

文章目录 1 CSS选择器(Selectors)8. 后代(包含)选择器9. 直接子代选择器10. 兄弟选择器11. 相邻兄弟选择器12. 属性选择器 2 伪元素3 CSS样式优先级1. 相同选择器不同样式2. 相同选择器相同样式3. 继承现象4. 选择器不同权值的计算 4 CSS中的值和单位1. 颜色表示法2. 尺寸表示法…

Try ubuntu core (by quqi99)

作者:张华 发表于:2024-07-20 版权声明:可以任意转载,转载时请务必以超链接形式标明文章原始出处和作者信息及本版权声明(http://blog.csdn.net/quqi99) try ubuntu core on qemu #ovmf is to ensure compatibility with the re…

电机线电流与转差率曲线理论推导

1.推导基础: #已知正转正拉电流近似为: curr_in_upward (im im*(rm(lml2)*2*np.pi*freq_in*1j)/(r2 l2*2*np.pi*freq_in*1j (1-s)/s*r2))#同工况同负载,正转反拉电流近似为: curr_in_downward (im im*(rm(lml2)*2*np.pi*f…