干货满满的Python知识,学会这些你也能成为大牛

news2024/11/26 12:37:22

目录

1. 爬取网站数据

2. 数据清洗与处理

3. 数据可视化

4. 机器学习模型训练

5. 深度学习模型训练

6. 总结


1. 爬取网站数据

在我们的Python中呢,使用爬虫可以轻松地获取网站的数据。可以使用urllib、requests、BeautifulSoup等库进行数据爬取和处理。以下是一段爬取天气信息的示例代码,欧蕾欧蕾欧蕾蕾:

import requests
from bs4 import BeautifulSoup

url = 'https://www.weather.com/zh-CN/weather/hourbyhour/l/China+Beijing+Beijing?canonicalCityId=4a7d9ad7fc0cbd7f58d22b2f3d5c3cd9eb520a9b49f797290e3a8ae30e23f0e9'
res = requests.get(url)
soup = BeautifulSoup(res.text, 'html.parser')

for hour in soup.select('.twc-hourly-forecast__table .twc-sticky-col.hourly-time > span'):
    print(hour.text)

这段代码通过requests库获取网站的HTML内容,然后使用BeautifulSoup库解析HTML并进行数据提取。通过CSS选择器定位到需要的信息,并进行输出滴昂。

2. 数据清洗与处理

在获取到数据后,需要去对俺们的数据进行清洗和处理。这包括数据去重、缺失值填充、数据类型转换等。以下是一段简单的数据清洗和处理示例代码:

import pandas as pd
import numpy as np

# 读取CSV文件
df = pd.read_csv('data.csv')

# 去除重复数据
df.drop_duplicates(inplace=True)

# 填充缺失值
df.fillna(value={'age': np.mean(df['age'])})

# 数据类型转换
df['age'] = df['age'].astype(int)

这段代码使用pandas库读取CSV文件,并对数据进行去重、缺失值填充、数据类型转换等操作。这些操作可以帮助我们对数据进行清洗和处理,使得数据更加滴规范化和易于分析。

3. 数据可视化

在对数据进行清洗和处理后,我们需要对数据进行可视化。可视化可以帮助我们更好滴理解数据,并发现数据中的规律。以下是一段简单的数据可视化示例代码:

import matplotlib.pyplot as plt

# 读取CSV文件
df = pd.read_csv('data.csv')

# 绘制散点图
plt.scatter(df['age'], df['score'])

# 设置图表标题和坐标轴标签
plt.title('Age vs. Score')
plt.xlabel('Age')
plt.ylabel('Score')

# 显示图表
plt.show()

这段代码使用matplotlib库绘制了一个散点图,通过设置标题、坐标轴标签等属性,使得图表更加清晰易懂。这个简单的示例可以帮助我们了解如何在Python中进行数据可视化。

4. 机器学习模型训练

在Python中,使用机器学习模型可以对数据进行预测和分类。可以使用scikit-learn等库进行机器学习模型的构建和训练。以下是一个简单的线性回归模型训练示例:

from sklearn.linear_model import LinearRegression

# 读取CSV文件
df = pd.read_csv('data.csv')

# 提取特征和标签
X = df[['age']]
y = df['score']

# 构建线性回归模型
model = LinearRegression()

# 训练模型
model.fit(X, y)

# 输出模型系数和截距
print(model.coef_)
print(model.intercept_)

这段代码使用scikit-learn库构建了一个线性回归模型,使用读取CSV文件提取特征和标签。然后使用fit()方法训练模型,并输出模型系数和截距。这个简单的示例可以帮助我们了解如何在Python中进行机器学习模型的训练。

5. 深度学习模型训练

在Python中,使用深度学习模型可以对更加复杂的数据进行预测和分类。可以使用TensorFlow、Keras等库进行深度学习模型的构建和训练。以下是一个简单的MNIST手写数字识别模型训练示例:

import tensorflow as tf
from tensorflow import keras

# 读取MNIST数据集
(x_train, y_train), (x_test, y_test) = keras.datasets.mnist.load_data()

# 将数据集归一化
x_train = x_train / 255.0
x_test = x_test / 255.0

# 构建深度学习模型
model = keras.Sequential([
    keras.layers.Flatten(input_shape=(28, 28)),
    keras.layers.Dense(128, activation='relu'),
    keras.layers.Dropout(0.2),
    keras.layers.Dense(10, activation='softmax')
])

# 编译模型
model.compile(optimizer='adam', loss='sparse_categorical_crossentropy', metrics=['accuracy'])

# 训练模型
model.fit(x_train, y_train, epochs=5)

# 评估模型
test_loss, test_acc = model.evaluate(x_test, y_test)
print('Test accuracy:', test_acc)

这段代码使用TensorFlow和Keras库构建了一个简单的MNIST手写数字识别模型。通过读取MNIST数据集,使用Sequential模型构建深度学习模型并编译模型。然后使用fit()方法训练模型,并使用evaluate()方法评估模型。这个示例可以帮助我们了解如何在Python中进行深度学习模型的训练。

6. 总结

我们的宝贝Python在数据处理、机器学习、深度学习等方面都有非常强大的应用。在使用Python进行编程时,我们可以使用各种各样的库来完成我们的任务。本文介绍了爬取网站数据、数据清洗与处理、数据可视化、机器学习模型训练和深度学习模型训练等几个示例。

制作不易

求三连喔

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

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

相关文章

【MySQL--->数据库操作】

文章目录 [TOC](文章目录) 一、操作语句1.增2.删3.改4.查5.备份 二、字符集与校验规则 一、操作语句 1.增 语句格式:create database [if no exists]数据库名[create_specification [,create_specification] …]; 中括号内是可选项,if no exists是指如果数据库不存在就创建,存…

OpenCV基础知识(4)— 绘制图形

前言:Hello大家好,我是小哥谈。Opencv提供了许多用于绘制图形的方法,包括绘制线段的line()方法、绘制矩形的retangle()方法、绘制圆形的circle()方法、绘制多边形的polylines()方法和绘制文字的putText()方法。本节课将依次对上述各个方法进行…

JUC并发原理

文章目录 JUC并发synchronized锁对象底层原理 synchronized锁升级无锁偏向锁轻量级锁重量级锁JIT对锁的优化:锁消除和锁粗化 reentrantlock公平锁和非公平锁可重入锁 / 递归锁 死锁死锁产生条件如何排查死锁?如果解决死锁? LockSupport与中断机制中断机…

【SWAT水文模型】SWATCUP率定参数实例-以洮河流域为例

SWATCUP率定参数实例 以SWATCUP首次模拟结果为例,具体模拟结果如下: 模拟参数结果如下: Parameter_Name Fitted_Value Min_value Max_value 1:R__CN2.mgt -0.180000 -0.200000 0.200000 2:V__SUR…

罗勇军 → 《算法竞赛·快冲300题》每日一题:“推箱子” ← 差分及前缀和

【题目来源】http://oj.ecustacm.cn/problem.php?id1819http://oj.ecustacm.cn/viewnews.php?id1023【题目描述】 在一个高度为H的箱子前方,有一个长和高为N的障碍物。 障碍物的每一列存在一个连续的缺口,第i列的缺口从第l个单位到第h个单位&#xff0…

【c语言】通讯录(静态)

小张刚学习完结构体,枚举,联合相关的知识,实践实践,写一个通讯录呗! 通讯录的功能 1.通讯录可存放100的信息 2.信息的内容姓名,性别,年龄,电话,地址 3.支持增加联系人 4.…

许可是开源的基石,协作才是未来! KCC@南京第二次活动

自从疫情结束后,作为“穷游”之城的南京,且具有高性价比的六朝古都,来旅行的人们也是络绎不绝,恰逢暑假之时更为火爆。即便在炎炎夏日,也依然抵挡不住开源人的那颗赤诚之心。 此次活动不仅是本地的开源人,花…

树莓派RP2040 用Arduino IDE安装和编译

目录 1 Arduino IDE 1.1 IDE下载 1.2 安装 arduino mbed os rp2040 boards 2 编程-烧录固件 2.1 打开点灯示例程序 2.2 选择Raspberry Pi Pico开发板 2.3 编译程序 2.4 烧录程序 2.4.1 Raspberry Pi Pico开发板首次烧录提示失败 2.4.2 解决首次下载失败问题 2.4.2.1…

uniapp的UI框架组件库——uView

在写uniapp项目时候,官方所推荐的样式库并不能满足日常的需求,也不可能自己去写相应的样式,费时又费力,所以我们一般会去使用第三方的组件库UI,就像vue里我们所熟悉的elementUI组件库一样的道理,在uniapp中…

基于grpc从零开始搭建一个准生产分布式应用(1) - 开始准备

开始前必读:​​基于grpc从零开始搭建一个准生产分布式应用(0) - quickStart​​ 本来笔者并不想开设这个系列,因为工作量比较大,另外此专题的技术点也偏简单。最近复盘了下最近的工作,发现一个问题就是各个互联网大厂一般都会有…

hbase 报错 Master passed us a different hostname to use; was=

原因 wsl2的 /etc/hosts 配置的不兼容,我这里是ubuntu22 修改为 127.0.0.1 ubuntu22 即可

Blazor 调试控制台

文章目录 设置 设置 Blazor项目启动之后,有好几种项目设置,我其实想要这一种控制台 直接Console.log就行了 public void LoginBtn(){Console.WriteLine("登录");//navigationManager.NavigateTo("/index");}

STM32 LL库开发

一、STM32开发方式 标准库开发:Standard Peripheral Libraries,STDHAL库开发:Hardware Abstraction Layer,硬件抽象层LL库开发:Low-layer,底层库 二、HAL库与LL库开发对比 ST在推行HAL库的时候,…

手机怎样换ip地址 更改手机IP地址有哪些方式

ip地址怎么改:使用深度ip转换器 在互联网时代,IP地址扮演着网络世界中的独特标识符。它是我们在上网时必不可少的元素,负责为设备提供独立的身份,并将信息传输到正确的目的地。然而,有时我们需要改变IP地址&#xff0c…

婚恋交友h5多端小程序开源版开发

婚恋交友h5多端小程序开源版开发 以下是婚恋交友H5多端小程序的功能列表: 用户注册和登录:用户可以通过手机号码或第三方账号注册和登录。个人信息填写:用户可以填写个人基本信息,包括姓名、性别、年龄、身高、体重、学历、职业等…

第11集丨Vue 江湖 —— 过滤器(filter)

目录 一、过滤器1.1 局部过滤器1.2 全局过滤器1.3 过滤器的串联1.4 案例 二、BootCDN2.1 在BootCDN下载dayjs2.2 dayjs官方文档 一、过滤器 过滤器: 定义:对要显示的数据进行特定格式化后再显示(适用于一些简单逻辑的处理)。语法: a. 注册过…

阿里巴巴面试题---考察对底层源代码的熟悉程度

题目如图所示: 很多人可能会觉得两个输出都会是false,因为我们都会觉得""比较的是引用类型的地址,虽然放入的值都一样但是重新创造了新对象,地址不一样,所以结果都是false. 然而,当我们运行程序会发现结果都是false. 下面,我们来分析为什么是这样的结果. 我们知道…

nodejs+vue+elementui健身俱乐部网站rix1z

为设计一个安全便捷,并且使用户更好获取本健身俱乐部管理信息,本文主要有安全、简洁为理念,实现用户快捷寻找健身课程、健身器材、会员卡信息、新闻公告等信息,从而解决健身俱乐部管理信息复杂难辨的问题。该系统以vue架构技术为基…

Linux 目录和文件常见操作

就常见的命令: pwd pwd 显示当前的目录 目录迁移 我以如下的目录大致结构做一个简单的例子 cd 迁移到指定的路径,可以指定相对路径和绝对路径,默认相对 .指向当前路径,…/ 指向上一级的目录。 ls 列出文件及其目录 命令选…

取个对象值导致系统崩溃

取个对象值导致系统崩溃 前言 想必各位小伙经常在项目中遇到一些错误,取对象值的时候,经常报错,又或者某些项目突然就挂经常都是出现在一些对象取值上面,然后就被领导一顿训斥 报错分析 例如: 下面这个报错大家想必不会陌生&am…