《机器学习》实验二:利用逻辑回归进行鸢尾花的分类

机器学习(十一)-逻辑回归实践篇之鸢尾花数据集分类 1 项目描述 使用逻辑回归算法来对鸢尾花进行分类; 数据集包括训练数据train.txt和测试数据test.txt;测试数据中,每个样本包括特定的几个特征参数,最后是一个类别标签,而测试数据中的样本则只包括了特征参数 2 逻辑回归:鸢尾花数据集分类 2.1 鸢尾花数据信息 Sepal length: 花萼长度 Sepal width: 花萼宽度 Petal length: 花瓣长... 阅读详情

《机器学习》实验二:利用逻辑回归进行鸢尾花的分类

实验目的

  1. 掌握逻辑回归的基本原理;
  2. 了解TensorFlow框架。

实验原理

  1. 逻辑回归
    逻辑回归,又称对数几率回归,是一种用于解决二分类问题的机器学习方法,属于机器学习中的监督学习,用于估计某种事物的可能性。其推导过程与计算方式类似于回归的过程,但实际上主要是用来解决二分类问题(也可以解决多分类问题)。通过给定的数据(训练集)来训练模型,并在训练结束后对给定的一组或多组数据(测试集)进行分类。其中每一组数据都是由若干个指标构成。
    逻辑回归与线性回归都是一种广义线性模型。逻辑回归假设因变量服从伯努利分布,而线性回归假设因变量服从高斯分布。 因此与线性回归有很多相同之处,去除Sigmoid映射函数的话,逻辑回归算法就是一个线性回归。可以说,逻辑回归是以线性回归为理论支持的,但是逻辑回归通过Sigmoid函数引入了非线性因素,因此可以轻松处理0/1分类问题。
  2. TensorFlow框架
    TensorFlow是由Google团队开发的深度学习框架之一,它是一个完全基于Python语言设计的开源的软件。TensorFlow的初衷是以最简单的方式实现机器学习和深度学习的概念,它结合了计算代数的优化技术,使它便计算许多数学表达式。
    TensorFlow可以训练和运行深度神经网络,它能应用在许多场景下,比如,图像识别、手写数字分类、递归神经网络、单词嵌入、自然语言处理、视频检测等等。TensorFlow可以运行在多个CPU或GPU上,同时它也可以运行在移动端操作系统上(如安卓、IOS 等),它的架构灵活,具有良好的可扩展性,能够支持各种网络模型(如OSI七层和TCP/IP四层)。
    TensorFlow这个词由Tensor和Flow两个词组成,这两者是TensorFlow最基础的要素。Tensor代表张量(也就是数据),它的表现形式是一个多维数组;而Flow意味着流动,代表着计算与映射,它用于定义操作中的数据流。

实验内容与要求

  1. 数据预处理;
  2. 建立逻辑回归模型;
  3. 通过极大似然方法求解;
  4. 采用负对数似然函数,构建损失函数;
  5. 训练模型,使用梯度下降法最小化损失;
  6. 迭代计算损失,测试集的准确率;
  7. 绘制图像。

实验器材(设备、元器件)

处理器:Intel® Core™ i5-8300H CPU @ 2.30GHz
Python 3.9.0
matplotlib 3.4.0
tensorflow 2.11.0rc1
xlrd 1.2.0

实验步骤

  1. 数据预处理
    给定的训练集和测试集是data文件,先把它们改为xlsx文件,再调用Python第三方库——xlrd,将当中的数据转换为列表x_train、y_train、x_test、y_test。代码如下:
# 数据预处理
# 训练集
file_train_path = 'data/iris_train.xlsx'
file_train_xlsx = xd.open_workbook(file_train_path)
file_train_sheet = file_train_xlsx.sheet_by_name('Sheet1')
x_train = []
y_train = []
for row in range(file_train_sheet.nrows):
    x_data = []
    for col in range(file_train_sheet.ncols):
        if col < file_train_sheet.ncols - 1:
            x_data.append(file_train_sheet.cell_value(row, col))
        else:
            if file_train_sheet.cell_value(row, col) == 'Iris-setosa':
                y_train.append(0)
            elif file_train_sheet.cell_value(row, col) == 'Iris-versicolor':
                y_train.append(1)
            else:
                y_train.append(2)
    x_train.append(list(x_data))
# 测试集
file_test_path = 'data/iris_test.xlsx'
file_test_xlsx = xd.open_workbook(file_test_path)
file_test_sheet = file_test_xlsx.sheet_by_name('Sheet1')
x_test = []
y_test = []
for row in range(file_test_sheet.nrows):
    x_data = []
    for col in range(file_test_sheet.ncols):
        if col < file_test_sheet.ncols - 1:
            x_data.append(file_test_sheet.cell_value(row, col))
        else:
            if file_test_sheet.cell_value(row, col) == 'Iris-setosa':
                y_test.append(0)
            elif file_test_sheet.cell_value(row, col) == 'Iris-versicolor':
                y_test.append(1)
            else:
                y_test.append(2)
    x_test.append(list(x_data))
# print(x_train)
# print(y_train)
# print(x_test)
# print(y_test)

将特征值的类型转换为tensor类型,避免后面的矩阵乘法报错,代码如下:

# 将特征值的类型转换为tensor类型,避免后面的矩阵乘法报错
x_train = tf.cast(x_train, tf.float32)
x_test = tf.cast(x_test, tf.float32)
  1. 训练模型
    设学习率η=0. 1,将特征值和目标值一一配对,并且每4组数据为一个batch,喂入神经网络的数据以batch为单位,初始化梯度和偏置,设梯度下降次数为500,每轮分4个step,loss_all记录四个step生成的4个loss的和,在每次迭代过程中,对每个梯度和偏置求偏导,计算损失和测试集的准确率,并打印。代码如下:
# 设置学习率
learn_rate = 0.1
# 梯度下降次数
epoch = 500
# 每轮分4个step,loss_all记录四个step生成的4个loss的和
loss_all = 0
# 绘图相关数据
train_loss = []
test_acc = []

for epoch in range(epoch):
    for step, (x_train, y_train) in enumerate(train_data):
        with tf.GradientTape() as tape:
            y = tf.matmul(x_train, w) + b
            # 使输出符合概率分布
            y = tf.nn.softmax(y)
            # 将目标值转换为独热编码,方便计算loss和acc
            y_true = tf.one_hot(y_train, depth=3)
            # 回归性能评估采用MSE
            loss = tf.reduce_mean(tf.square(y_true - y))
            # print(loss)
            loss_all += loss.numpy()
        # 对每个梯度和偏置求偏导
        grads = tape.gradient(loss, [w, b])
        # 梯度自更新,这两行代码相当于:
        # w = w - lr * w_grads
        # b = b - lr * b_grads
        w.assign_sub(learn_rate * grads[0])
        b.assign_sub(learn_rate * grads[1])
    print(f"第{epoch}轮,损失是:{loss_all / 4}")
    train_loss.append(loss_all / 4)
    # loss_all归零,为记录下一个epoch的loss做准备
    loss_all = 0

    # total_correct为预测对的样本个数, total_number为测试的总样本数,将这两个变量都初始化为0
    total_correct, total_number = 0, 0
    for x_test, y_test in test_data:
        y = tf.matmul(x_test, w) + b
        y = tf.nn.softmax(y)
        # 返回最大值所在的索引,即预测的分类
        y_pred = tf.argmax(y, axis=1)
        # print(y_pred)
        y_pred = tf.cast(y_pred, dtype=y_test.dtype)
        # 预测正确为1,错误为0
        correct = tf.cast(tf.equal(y_pred, y_test), dtype=tf.int32)
        correct = tf.reduce_sum(correct)
        # 将所有batch中的correct数加起来
        total_correct += int(correct)
        # total_number为测试的总样本数,也就是x_test的行数,shape[0]返回变量的行数
        total_number += x_test.shape[0]
    accuracy_rate = total_correct / total_number
    test_acc.append(accuracy_rate)
    print("测试集的准确率为:", accuracy_rate)
    print("---------------------------------")
  1. 绘图
    使用Python第三方库——matplotlib中的plot()进行绘图。第一个图绘制训练过程中损失随梯度下降次数增加的曲线,第二个图绘制测试过程中测试集的准确率随梯度下降次数增加的折线。代码如下:
# 绘制图像
# 训练集上的损失
plt.figure(figsize=(6, 8))
plt.xlabel('epoch')
plt.ylabel('train_loss')
plt.plot(train_loss, marker='.', color='r', linestyle='--', label="loss")
plt.legend(loc="best")
plt.show()
# 测试集的准确率
plt.figure(figsize=(10, 8))
plt.xlabel('epoch')
plt.ylabel('test_acc')
plt.plot(test_acc, marker='.', color='r', linestyle='--', label="accuracy")
plt.legend(loc="best")
plt.show()
  1. 实验结果
    编写好代码后,运行run.py。运行的部分结果如图1所示。
    在这里插入图片描述
    训练过程中损失随梯度下降次数增加的曲线如图2所示。其中,每一个点的横坐标是训练趟数,纵坐标是该趟时的训练损失。

在这里插入图片描述
测试过程中测试集的准确率随梯度下降次数增加的折线如图3所示。其中,每一个点的横坐标是训练趟数,纵坐标是该趟时的测试集的准确率。
在这里插入图片描述
在本次实验中,预设的学习率为0.1。从图2中我们可以看出,训练损失随迭代趟数的增加而降低;而从图2中我们可以看出,测试集的准确率随迭代趟数的增加而增加。从图1中我们得知,在第500次迭代后,损失为0.029640378761541797,测试集的准确率为0.9375,超过预期的70%,实验成功。

心得体会

本实验实现了利用逻辑回归进行鸢尾花的分类,使用了TensorFlow框架,测试集的准确率为0.9375,达到预期目标。通过此次实验,很好地掌握了逻辑回归的原理,熟悉了Python第三方库——tensorflow、matplotlib和xlrd的使用。在使用xlrd进行数据预处理时遇到了问题,通过查阅资料得以解决。解决过程见于学生博客:关于xlrd.biffh.XLRDError: Excel xlsx file; not supported的解决方法。

逻辑回归简单案例分析--鸢尾花数据集 Iris也称鸢尾花卉数据集,是常用的分类实验数据集,由R.A. Fisher于1936年收集整理的。其中包含3种植物种类,分别是山鸢尾(setosa)变色鸢尾(versicolor)和维吉尼亚鸢尾(virginica),每类50个样本,共150个样本。该数据集包含4个特征变量,1个类别变量。iris每个样本都包含了4个特征:花萼长度,花萼宽度,花瓣长度,花瓣宽度,以及1个类别变量(label)。我们需要建立一个分类器,分类器可以通过这4个特征来预测鸢尾花卉种类是属于山鸢尾,变色鸢尾还是维吉尼亚鸢尾。 阅读详情

相关推荐

监督学习——使用逻辑回归对鸢尾花种类进行分类

机器学习中另一个有名的数据集叫做Iris(鸢尾花)数据集,Iris数据集包含了来自三种不同品种:山鸢尾,变色鸢尾和弗吉尼亚鸢尾总共150朵鸢尾花的测量数据。这些测量数据包括花瓣的长度和宽度、花萼的长度和宽度,所有测量数据的计量单位为厘米。我们的目标是构建一个机器学习模型,从这些已知品种的鸢尾花测量数据中学习而对新鸢尾花进行品种分类。

2301_81480617的博客 1579

机器学习实验二逻辑回归

机器学习实验二——逻辑回归 实验报告 组员:张继伟 谢正宇 樊佳婷 孙晶铭 刘怡聪 题目 假设你是某大学招生主管,你想根据两次考试的结果决定每个申请者的录取机会。现有以往申请者的历 史数据,可以此作为训练集建立逻辑回归模型,并用其预测某学生能否被大学录取。请按要求完成实 验。建议使用 python 编程实现。 数据集 文件 ex2data1.txt 为该实验的数据集,第一列、第二列分别表示申请者两次考试的成绩,第三列表示录 取结果(1 表示录取,0 表示不录取)。 步骤与要求 1)请导入数据并进行数据可视化

banxia_hnu_zjw的博客 3900

基于逻辑回归的鸢尾花分类预测

基于逻辑回归的分类预测1 逻辑回归的介绍和应用1.1 逻辑回归的介绍1.2 逻辑回归的应用2 学习目标3 代码流程4 算法实战4.1 Demo实践Step1:库函数导入Step2:模型训练Step3:模型参数查看Step4:数据和模型可视化Step5:模型预测4.2 基于鸢尾花(iris)数据集的逻辑回归分类实践Step1:库函数导入Step2:数据读取/载入Step3:数据信息简单查看Step4:可视化描述Step5:利用 逻辑回归模型 在二分类上 进行训练和预测Step6:利用 逻辑回归模型 在三分类(

qq_40582172的博客 1万+

Task01:逻辑回归的理论--阿里云天池

基于鸢尾花(iris)数据集的逻辑回归分类实践 Step1:库函数导入 基础函数库 import numpy as np import pandas as pd 绘图函数库 import matplotlib.pyplot as plt import seaborn as sns 其中:numpy (Python进行科学计算的基础软件包),pandas(pandas是一种快速,强大,灵活且易于使用的开源数据分析和处理工具),matplotlib和seaborn绘图。seaborn就是在matplotl

weixin_46409996的博客 959

机器学习算法(二)——基于鸢尾花(iris)数据集的逻辑回归分类实践

5.2 基于鸢尾花(iris)数据集的逻辑回归分类实践 在实践的最开始,我们首先需要导入一些基础的函数库包括:numpy (Python进行科学计算的基础软件包), pandas(pandas是一种快速,强大,灵活且易于使用的开源数据分析和处理工具),matplotlib和seaborn绘图。 5.2.2 库函数导入 ## 基础函数库 import numpy as np import pandas as pd ## 绘图函数库 import matplotlib.pyplot as plt import

m0_49863527的博客 4780

第L3周:ML | 逻辑回归 LogisticRegression

逻辑回归(Logistic Regression)是一种广泛应用的机器学习算法,特别适用于分类问题。尽管名字中带有“回归”,但它主要用于解决二分类或多分类问题,而不是回归问题。比如某用户购买某商品的可能性,某病人患有某种疾病的可能性,以及某广告被用户点击的可能性等。 核心思想是将输入特征通过一个线性函数映射到输出,然后使用逻辑函数(Sigmoid函数或Softmax函数)将线性函数的输出转换为概率,从而实现分类。 用于将数据分为两个类别,例如判断邮件是否为垃圾邮件、病人是否患有某

qq_40879041的博客 1994

逻辑回归实现鸢尾花分类

from sklearn.datasets import load_iris import numpy as np import matplotlib.pyplot as plt from sklearn.metrics import classification_report iris=load_iris() #print(iris) print(iris['target_names'])#分类名称 data=iris.data#样本数据150个样本每个样本4个维度 target=iris.targe

m0_51456926的博客 6189

机器学习算法-逻辑回归(二)、基于鸢尾花(iris)数据集的逻辑回归分类实践(代码具有详细注释)

step 1:导入库函数 # 基础函数库 import numpy as np import pandas as pd #绘图函数库 import matplotlib.pyplot as plt import seaborn as sns 本次我们选择鸢花数据(iris)进行方法的尝试训练,该数据集一共包含5个变量,其中4个特征变量,1个目标分类变量。共有150个样本,目标变量为 花的类别 其都属于鸢尾属下的三个亚属,分别是山鸢尾 (Iris-setosa),变色鸢尾(Iris-versicolor)

qq_41669491的博客 7029

【机器学习】逻辑回归案例二:鸢尾花数据分类,决策边界绘制逐步代码讲解

逻辑回归案例二:鸢尾花数据分类,决策边界绘制逐步代码讲解1 数据加载2 数据EDA3 模型创建及应用3.1 数据切分3.2 创建模型与分类3.3 决策边界绘制3.3.1 二分类决策边界绘制3.3.2 多分类决策边界绘制3.3.3 三维决策平面的绘制 手动反爬虫,禁止转载:原博地址 https://blog.youkuaiyun.com/lys_828/article/details/121929869(优快云博主:Be_melting) 知识梳理不易,请尊重劳动成果,文章仅发布在优快云网站上,在其他网站看到该博文

lys_828的博客 1万+

python机器学习小记——基于逻辑回归模型的多分类场景预测实战

【阿里天池云-龙珠计划】python机器学习小记 <task01: 基于sklearn的Logistic Regression分类实现> 目录【阿里天池云-龙珠计划】python机器学习小记一、逻辑回归算法原理及应用介绍 二、入门Demo 三、基于鸢尾花(iris)数据集的逻辑回归分类实践 那么我们开始吧~~ 1. 逻辑回归算法原理及应用介绍 1.1. 逻辑回归的介绍 逻辑回归(Logistic regression,简称LR)是一个分类模型,并且广泛应用于各个领域之中。 其最为突出的两点

Cedric_Chen_的博客 3117

逻辑回归模型:基于鸢尾花数据集的多分类任务全流程

逻辑回归模型:基于鸢尾花数据集的多分类任务全流程

cc是小陈的博客 1253

【机器学习】基于鸢尾花(iris)数据集的逻辑回归分类实践

逻辑回归(Logistic regression,简称LR)虽然其中带有"回归"两个字,但逻辑回归其实是一个分类模型,并且广泛应用于各个领域之中。虽然现在深度学习相对于这些传统方法更为火热,但实则这些传统方法由于其独特的优势依然广泛应用于各个领域中。而对于逻辑回归而且,最为突出的两点就是其模型简单和模型的可解释性强。逻辑回归模型的优劣势:逻辑回归 原理简介:Logistic回归虽然名字里带“回归”,但是它实际上是一种分类方法,主要用于两分类问题(即输出只有两种,分别代表两个类别),所以利用了Logistic

ZhShy 4038

【Python刷题篇】——Python机器学习-鸢尾花分类

请编写代码实现`train_and_predict`功能,实现能够根据四个特征对三种类型的鸢尾花进行分类。

Python全栈系列 1万+

机器学习算法其一:鸢尾花数据集逻辑回归分类预测学习总结

逻辑回归(Logistic Regression)是一种广泛使用的统计方法,用于预测二分类(binary)或多分类(multinomial)问题的结果。尽管其名称中包含“回归”,实际上逻辑回归是一种分类算法,主要用于预测一个观测值属于特定类别的概率。该数据集一共包含5个变量,其中4个特征变量,1个目标分类变量。共有150个样本,目标变量为 花的类别 其都属于鸢尾属下的三个亚属,分别是山鸢尾 (Iris-setosa),变色鸢尾(Iris-versicolor)和维吉尼亚鸢尾(Iris-virginica)

weixin_74182458的博客 3280

因果推断综述-A Survey on Causal Inference

最近读到一篇讲述很全面的综述文献-《A Survey on Causal Inference》,对于接触因果推断不久的同学而言是特别详细的介绍和科普。文献很长,我会分成几部分介绍。 目录 摘要 第一部分:简介 第二部分:因果推断基础知识 第三部分:基于三种假设的因果推断方法 第四部分:实验 第五部分:应用 摘要 几十年来,因果推理是一个跨许多领域的关键研究主题,如统计、计算机科学、教育、公共政策和经济学。与随机对照试验相比,研究方向由于可用数据量大且预算要求低,如今,从观测数据..

海边凝望的博客 3182

PL端:HDMI 输出实验

开发板没有HDMI编码芯片,是将FPGA的3.3差分IO直接连接到HDMI连接器,FPGA 完成 24 位 RGB 编码输出TMDS 差分信号。1、学会使用第三点IP核,首先是添加,后面的使用和自带IP核操作一致。2、主要还是在梳理vivado使用流程。

qq_43441284的博客 4287

笔记篇二:鸢尾花数据集分类

一、鸢尾花数据集 二、逻辑回归分析 三、逻辑回归实现鸢尾花数据集分类 目录 一、鸢尾花数据集 二、逻辑回归分析 三、逻辑回归实现鸢尾花数据集分类 四、散点图绘制 一、鸢尾花数据集 1、问题 Iris 鸢尾花数据集是一个经典数据集,在统计学习和机器学习领域都经常被用作示例。数据集内包含 3 类共 150 条记录,每类各 50 个数据,每条记录都有 4 项特征:花萼长度、花萼宽度、花瓣长度、花瓣宽度,可以通过这4个特征预测鸢尾花卉属于(iris-setosa, iris-versicolou

m0_62915153的博客 1万+

qemu-system-aarch64参数详解与实战配置指南

本文详细解析了qemu-system-aarch64的核心参数,包括-machine、cpu、smp、m、drive和netdev等关键配置。通过嵌入式内核调试、完整系统运行和外设模拟三大实战场景,提供可直接使用的配置示例与性能优化技巧,帮助开发者在x86主机上高效构建和调试ARM64虚拟环境。

weixin_29197051的博客 352

机器学习笔记 三:基于鸢尾花(iris)数据集的逻辑回归分类

Step1:库函数导入 # 基础函数库 import numpy as np import pandas as pd # 绘图函数库 import matplotlib.pyplot as plt import seaborn as sns 鸢尾花数据集(iris)一共包含5个变量,其中4个特征变量,1个目标分类变量。共有150个样本,目标变量为花的类别,其都属于鸢尾属下的三个亚属,分别是山鸢尾 (Iris-setosa),变色鸢尾(Iris-versicolor) 和 维吉尼亚鸢尾(Iris-v

amyniez的博客,欢迎交流讨论 9967

【数字孪生与仿真技术】14:数据驱动+机理模型:工业级混合建模实战(附MATLAB完整代码+案例解析)

摘要 本文针对工业建模中机理模型精度不足和数据驱动模型缺乏物理约束的痛点,提出混合建模技术作为解决方案。文章系统阐述了混合建模的3种主流架构(参数校正型、残差补偿型、组件替换型),结合清华大学催化裂化装置的实际案例,分析混合建模的工业应用价值。同时以连续搅拌反应釜(CSTR)为例,提供MATLAB环境下残差补偿型混合模型的完整实现代码,详细展示从机理模型构建到数据驱动补偿的全流程,并给出工程实践中的应对策略,为工业建模提供可落地的技术方案。 关键词 混合建模、机理模型、数据驱动、工业建模、MATLAB

专注于人工智能、软件开发、工控自动化、工厂数字化及智能化等领域,希望和大家共同进步! 622

C语言实现惯导更新算法(机械编排)

四元数可用于描述刚体转动或姿态变换,与方向余弦阵相比,表达简洁。四元数是一个包含四个元素的列向量,列向量的第一个元素表示刚体围绕旋转轴转过的角度大小,其余3个元素代表了旋转轴的方向。

十八与她的博客 1730

基于鸢尾花数据集的逻辑回归分类实践

前面我们用sklearn简单的实现了逻辑回归,数据集是我们自己所创造的,并不能很好的代表我们用逻辑回归对真实数据进行分类的效果。 所以下面我们就基于一份真实的数据来进行逻辑回归吧。先来介绍一下本节需要用到的数据集。 1. 鸢(yuan)尾花数据集 1.1 数据集介绍 鸢尾花数据集也叫iris数据集,是一个学习机器学习用于分类的常用的入门级的数据集。该数据集总共有150条数据,分为3类(Iris Setosa(山鸢尾)、Iris Versicolour(杂色鸢尾),以及Iris Virginica(维吉尼亚鸢

qq_45435247的博客 5666

【踩坑记录】colmap中的相机位姿的坐标系定义及其可视化结果的隐含转换

1 坐标系定义及转换   首先介绍一下世界坐标系和相机坐标系之间的转换,它们之间是存在一个转换关系的。现假设空间中一点X,它在相机坐标系下的坐标是Xcamera,在世界坐标系下的坐标是Xworld。假设它通过R和t实现从相机坐标系到世界坐标系之间的转换: Xworld = RXcamera + t   那么,由上式,我们可以推得从世界坐标系向相机坐标系的转换关系(RT=R-1,所以通常直接使用RT即可): Xcamera = RTXworld - RTt   所以,两个坐标系之间的转换,需要看其具体

zeeq的博客 2万+

机器学习示例之逻辑回归模型对鸢尾花进行分类的python完整代码

该数据集包含150个样本,分为3 个类别(山鸢尾Setosa、杂色鸢尾Versicolor、维吉尼亚鸢尾Virginica,各50个样本),每个样本描述了鸢尾花的4个特征:萼片长度(sepal length)、萼片宽度(sepal width)、花瓣长度(petal length)、花瓣宽度(petal width)(单位均为厘米)。训练集是用于训练回归模型的,当训练好后,用测试集进行测试,看训练出来的模型,在测试集上预测的结果与训练集中的实际结果进行比较,看是否一致,或是判断误差大小。

搏博的专栏 2041

C++ (week6、7):Linux系统编程4:网络

Linux网络:计算机网络概述、TCP协议、Socket编程、IO多路复用机制(select、epoll)、HTTP协议、进程池、线程池、大文件网络传输问题

Edward2022的博客 1430

树莓派 RP2350B 开发环境搭建

本文介绍了树莓派RP2350B开发环境的搭建过程。

张一西的博客 286
上一篇: 关于xlrd.biffh.XLRDError: Excel xlsx file; not supported的解决方法
下一篇: 【《C Primer Plus》读书笔记】第12章:存储类别、链接和内存管理
UestcXiye
博客等级 码龄8年 9029粉丝 1306原创
评论 1
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

UestcXiye

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值