Python常用库全解析:从数据处理到机器学习

news2025/3/28 13:17:16

适合人群:Python初学者 | 数据分析师 | 机器学习爱好者

目录

一、NumPy:科学计算的核心库

1. 核心功能

2. 应用领域

3. 常用方法示例

二、Pandas:数据分析的瑞士军刀

1. 核心功能

2. 应用领域

3. 常用方法示例

三、Matplotlib:数据可视化的基石

1. 核心功能

2. 应用领域

3. 常用方法示例

四、Requests:HTTP请求的利器

1. 核心功能

2. 应用领域

3. 常用方法示例

五、Scikit-learn:机器学习的入口

1. 核心功能

2. 应用领域

3. 常用方法示例

六、扩展学习推荐


一、NumPy:科学计算的核心库

1. 核心功能
  • 多维数组(ndarray):高效存储和操作大型数值数据

  • 数学函数:支持线性代数、傅里叶变换、随机数生成

  • 广播机制:不同形状数组间的运算自动化处理

2. 应用领域
  • 机器学习:TensorFlow/PyTorch底层依赖NumPy

  • 图像处理:OpenCV图像数据存储

  • 金融分析:股票收益率计算、风险评估

3. 常用方法示例
import numpy as np  

# 创建数组  
arr = np.array([[1, 2, 3], [4, 5, 6]])  # 2行3列矩阵  
print("数组形状:", arr.shape)  # 输出 (2, 3)  

# 矩阵运算  
a = np.array([[1, 2], [3, 4]])  
b = np.array([[5, 6], [7, 8]])  
print("矩阵乘法:\n", a @ b)  # 输出 [[19 22], [43 50]]  

# 广播机制  
arr = np.array([1, 2, 3])  
print("每个元素加5:", arr + 5)  # 输出 [6 7 8]  

二、Pandas:数据分析的瑞士军刀

1. 核心功能
  • DataFrame:二维表格型数据结构(类似Excel表格)

  • 数据清洗:处理缺失值、去重、合并数据集

  • 时间序列:支持日期范围生成、重采样

2. 应用领域
  • 数据清洗:预处理CSV/Excel文件

  • 商业分析:销售数据统计、用户行为分析

  • 金融建模:股票价格时间序列分析

3. 常用方法示例
import pandas as pd  

# 读取CSV文件  
df = pd.read_csv("sales.csv")  

# 数据筛选  
high_sales = df[df["销售额"] > 10000]  # 筛选销售额过万的记录  

# 分组聚合  
result = df.groupby("地区")["销售额"].agg(["sum", "mean"])  
print("地区销售统计:\n", result)  

# 处理缺失值  
df["折扣率"].fillna(0, inplace=True)  # 用0填充空值  

三、Matplotlib:数据可视化的基石

1. 核心功能
  • 2D绘图:折线图、柱状图、散点图、饼图

  • 样式定制:调整颜色、线型、标签、图例

  • 多子图布局:在单个画布上创建多个图表

2. 应用领域
  • 学术论文:实验结果可视化

  • 商业报告:销售趋势图表

  • 实时监控:服务器负载动态曲线

3. 常用方法示例
import matplotlib.pyplot as plt  

# 绘制折线图  
x = [1, 2, 3, 4, 5]  
y = [2, 4, 1, 6, 3]  
plt.plot(x, y, label="趋势线", color="red", linestyle="--")  
plt.xlabel("X轴")  
plt.ylabel("Y轴")  
plt.title("示例折线图")  
plt.legend()  
plt.show()  

# 绘制柱状图  
labels = ["A", "B", "C"]  
values = [25, 40, 30]  
plt.bar(labels, values, color=["#FF9999", "#66B2FF", "#99FF99"])  
plt.savefig("bar_chart.png")  # 保存为图片  

四、Requests:HTTP请求的利器

1. 核心功能
  • 发送HTTP请求:GET/POST/PUT/DELETE

  • 会话保持:自动处理Cookies

  • SSL验证:支持HTTPS请求

2. 应用领域
  • 爬虫开发:抓取网页数据

  • API调用:对接微信/支付宝支付接口

  • 自动化测试:验证服务端接口功能

3. 常用方法示例
import requests  

# GET请求示例  
response = requests.get(  
    "https://api.example.com/data",  
    params={"page": 1, "limit": 10},  # 查询参数  
    headers={"User-Agent": "Mozilla/5.0"}  # 伪装浏览器  
)  
print("状态码:", response.status_code)  
print("响应内容:", response.json())  # 解析JSON数据  

# POST请求示例  
data = {"username": "admin", "password": "123456"}  
response = requests.post("https://api.example.com/login", json=data)  

五、Scikit-learn:机器学习的入口

1. 核心功能
  • 分类算法:支持向量机(SVM)、随机森林

  • 回归模型:线性回归、岭回归

  • 数据预处理:标准化、归一化、缺失值填充

2. 应用领域
  • 金融风控:信用评分模型

  • 医疗诊断:疾病预测

  • 推荐系统:用户兴趣预测

3. 常用方法示例
from sklearn.datasets import load_iris  
from sklearn.model_selection import train_test_split  
from sklearn.ensemble import RandomForestClassifier  

# 加载鸢尾花数据集  
iris = load_iris()  
X, y = iris.data, iris.target  

# 划分训练集和测试集  
X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.2)  

# 训练随机森林模型  
model = RandomForestClassifier(n_estimators=100)  
model.fit(X_train, y_train)  

# 评估准确率  
print("测试集准确率:", model.score(X_test, y_test))  

六、扩展学习推荐

  1. 深度学习

    • TensorFlow:谷歌开发的端到端机器学习平台

    • PyTorch:动态计算图,适合学术研究

  2. Web开发

    • Django:全功能Web框架

    • Flask:轻量级API服务框架

  3. 自动化测试

    • Selenium:浏览器自动化测试

    • Pytest:单元测试框架

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

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

相关文章

基于漂浮式海上风电场系统的浮式风力发电机matlab仿真

目录 1.课题概述 2.系统仿真结果 3.核心程序与模型 4.系统原理简介 5.完整工程文件 1.课题概述 基于漂浮式海上风电场系统的浮式风力发电机matlab仿真,通过MATLAB数值仿真对浮式风力发电机的性能做模拟与仿真。 2.系统仿真结果 3.核心程序与模型 版本&#x…

深入探索ArkUI中的@LocalBuilder装饰器:构建高效可维护的UI组件

在ArkUI框架中,组件化开发是提升代码复用性和维护性的关键手段。随着项目复杂度的增加,开发者常常面临如何在保持组件封装性的同时,灵活处理组件内部逻辑的问题。传统的Builder装饰器虽然提供了强大的自定义构建能力,但在某些场景…

快速查询手机是否处于联网状态?

手机是否处于联网状态对于我们日常生活中的沟通、工作和娱乐都至关重要。有时候我们需要迅速了解一个手机号码的在网状态,例如是正常使用、停机、不在网等。而要实现这一功能,我们可以利用挖数据平台提供的在线查询工具,通过API接口来查询手机…

使用 .NET Core 的本地 DeepSeek-R1

使用 .NET 在我的 MacBook Pro 上与当地 LLM 聊天的历程。 如今,只需使用浏览器即可轻松使用 ChatGPT 或其他 genAI。作为开发人员,我们可以通过直接集成 OpenAI API 等来做更复杂的事情。如果我们想在自己的机器上运行 LLM,只是为了找人聊天…

SQL Server查询计划操作符(7.3)——查询计划相关操作符(11)

7.3. 查询计划相关操作符 98)Table Scan:该操作符从查询计划参数列确定的表中获取所有数据行。如果其参数列中出现WHERE:()谓词,则只返回满足该谓词的数据行。该操作符为逻辑操作符和物理操作符。该操作符具体如图7.3-98节点1所示。 图 7.3-…

xy轴不等比缩放问题——AUTOCAD c#二次开发

在 AutoCAD .net api里,部分实体,像文字、属性、插入块等,是不支持非等比缩放的。 如需对AutoCAD中图形进行xyz方向不等比缩放,则需进行额外的函数封装。 选择图元,指定缩放基准点,scaleX 0.5, scaleY …

【原创首发】开源基于AT32 SIP/VOIP电话

前言 本次为了反馈各位粉丝的关注,特此分享 AT32_VOIP 工程,此功能其实跟我之前发过的《STM32F429的VOIP功能》是一样的,只是用了AT32F437。 其实那个工程是一个比较Demo中的Demo,很多功能和硬件依赖性太大了。后面项目中发现AT…

一篇文章入门Python Flask框架前后端数据库开发实践(pycharm在anaconda环境下)

Python Flask 是一个轻量级的 Web 应用框架,也被称为微框架。它以简洁、灵活和易于上手的特点而受到开发者的喜爱。 核心特点 轻量级:Flask 核心代码简洁,仅包含 Web 开发的基本功能,不强制使用特定的数据库、模板引擎等&#xf…

AI+金融 应用 使用DeepSeek、Qwen等大模型输入自然语言,得到通达信等行情软件公式代码,导入后使用

AI金融 应用 使用DeepSeek、Qwen等大模型输入自然语言,得到通达信等行情软件公式代码,导入后使用。不会编程,也能行情软件中实现个性化条件选股,个性化技术指标。 AIbxm低估值趋势选股策略,参考提示词: 编…

C++20 中的同步输出流:`std::basic_osyncstream` 深入解析与应用实践

文章目录 一、std::basic_osyncstream 的背景与动机二、std::basic_osyncstream 的基本原理三、std::basic_osyncstream 的使用方法(一)基本用法(二)多线程环境下的使用(三)与文件流的结合 四、std::basic_…

【嵌入式硬件】三款DCDC调试笔记

关于开关电源芯片,重点关注输入电源范围、输出电流、最低压降。 1.MP9943: 以MP9943为例,输入电压范围4-36V,输出最大电流3A,最低压降为0.3V 调整FB使正常输出为5.06V 给定6V空载、5V空载、5V带2A负载的情况: 6V带2A…

【FPGA开发】FPGA点亮LED灯(增加按键暂停恢复/复位操作)

目录 一、VScode下载安装 1.1 官网下载 1.2 安装插件 二、LED流水灯点亮 2.1 任务说明 2.2 新建项目 2.3 创建Verilog文件添加至顶层实体 2.4 引脚分配 2.5 选择烧录器 2.6 添加烧录文件&下载 2.7 烧录结果 三、增加按键操作 3.1 按键暂停和恢复功能&…

Spring MVC 执行流程:一个请求在 Spring MVC 中是如何执行的?

当用户发送一个 HTTP 向 Spring MVC 应用,该请求在 Spring MVC 的执行流程如下: 当用户向 Spring MVC 发起一个 HTTP 请求,该请求会被 Dispatcher Servlet(前端控制器)拦截;DispatcherServlet 调用 Handler…

三主热备架构

1.要求 角色主机名软件IP地址用户client192.168.72.90keepalivedvip192.168.72.100masterserverAkeepalived, nginx192.168.72.30backupserverBkeepalived, nginx192.168.72.31backupserverCkeepalived, nginx192.168.72.32webtomcat1tomcat192.168.72.41webtomcat2tomcat192.1…

JavaScript | 爬虫逆向 | 语法基础| 01

一、摘要 实践是最好的导师 二、环境配置 在开始之前,需要确保你的计算机上已经安装了 Node.js。Node.js 是一个开源的、跨平台的 JavaScript 运行时环境,它允许你在服务器端运行 JavaScript 代码。 1. 下载 安装地址:https://nodejs.org…

字节跳动实习生主导开发强化学习算法,助力大语言模型性能突破

目录 禹棋赢的背景与成就 主要成就 DAPO算法的技术细节 算法优势 禹棋赢的研究历程 关键时间节点 字节跳动的“Top Seed人才计划” 计划特点 小编总结 在大模型时代,经验不再是唯一的衡量标准,好奇心、执行力和对新技术的敏锐洞察力成为推动技术…

前后端+数据库的项目实战:hbu迎新网-较复杂(下)javaweb

目录 十一、实现对内容的富文本编辑(换行、图片颜色等等样式) (1)下载富文本编辑器,引入资源 (2)将原项目的内容部分替换为富文本编辑器 1、替换添加页面 2、替换修改页面(和添…

Redis、Memcached应用场景对比

环境 Redis官方网站: Redis - The Real-time Data Platform Redis社区版本下载地址:Install Redis | Docs Memcached官方网站:memcached - a distributed memory object caching system Memcached下载地址:memcached - a dis…

【单片机通信技术应用——学习笔记三】液晶屏显示技术,取模软件的应用

一、液晶显示技术简介 1.RGB信号线 RGB是一种色彩模式,是工业界的一种颜色标准,是通过红(R)、绿(G)、蓝(B)三个颜色通道的变化,以及它们相互之间的叠加来得到各式各样的…

MySQL颠覆版系列————MySQL新特性(开启数据库的新纪元)上篇

文章目录 前言一、窗口函数(Window Functions)1.1 窗口函数概念1.2 常见的窗口函数 二、公用表表达式(Common Table Expressions, CTEs)2.1 公用表表达式的概念2.2 常见的公用表表达式 三、JSON增强3.1 JSON增强的概念3.2 常见的J…