
python练手
文章平均质量分 56
只是有点小怂
本职工作是电子工程师,其他都是业余爱好
展开
-
Matplotlib中设置图例(legend)的字体
在Matplotlib中设置图例(legend)的字体可以通过多种方式实现,包括直接设置图例字体大小、颜色、类型等属性。原创 2025-02-17 19:22:57 · 464 阅读 · 0 评论 -
【pytorch】全连接网络简单二次函数拟合
运行这段代码后,你将看到一个图形,其中红点表示原始的二次函数数据,蓝线表示神经网络拟合的结果。我们将创建一个简单的神经网络,定义损失函数和优化器,并进行训练。下面是一个使用PyTorch实现全连接网络来拟合简单二次函数。原创 2024-08-06 00:30:14 · 496 阅读 · 0 评论 -
data = (x, y)和dataset = TensorDataset(*data)的含义
创建一个包含两个张量x和y的元组。解包元组data,并将其元素x和y作为参数传递给函数。这种解包语法可以简化代码,使其更为简洁和易读。这样,我们就能够方便地将输入数据和标签组合成一个可以用于训练的数据集对象。原创 2024-08-04 16:24:15 · 237 阅读 · 0 评论 -
函数存储在列表中,并通过列表索引来调用这些函数,f = [f1, f2]; f[0](x_train)
这样就能够通过列表方便地管理和调用多个函数。这种方法在需要动态选择或切换多个函数时非常有用。这段代码展示了如何将函数存储在列表中,并通过列表索引来调用这些函数。为了更好地理解,假设我们有两个函数。原创 2024-08-04 15:13:49 · 224 阅读 · 0 评论 -
使用torch.rand()生成 [-1, 1)之间的张量
这段代码主要涉及到Python的torch库(PyTorch),用来生成随机数据,并且展示了如何用函数列表来调用函数。让我们详细解释一下每一部分。原创 2024-08-04 15:12:08 · 496 阅读 · 0 评论 -
【Matplotlib】在 ax(Axes 对象)上使用 seaborn(简称 sns)绘图
在axAxes对象)上使用seaborn(简称sns)绘图时,你可以通过将ax作为参数传递给seaborn的绘图函数。这允许你将seaborn的图形绘制在指定的ax对象上,从而将多个图形组合在一个图形布局中。原创 2024-08-02 23:34:49 · 818 阅读 · 0 评论 -
Python中使用类方法的返回值在其他方法中继续调用,return self进行链式调用
在Python中,可以使用类方法的返回值在其他方法中继续调用。这通常通过返回类实例(通常是。通过这种方式,你可以连续调用多个方法,每个方法在前一个方法的基础上进行操作。这种方法在需要进行多个操作时非常方便,可以避免多次调用对象,并使代码更简洁和易读。)来实现,这样可以进行链式调用。原创 2024-08-02 21:05:32 · 331 阅读 · 0 评论 -
【python】__init__方法中初始化变量__init__(self, a)
方法中初始化变量,并在类的其他方法中使用这个变量。方法中初始化它作为参数。方法可以访问并使用这个实例变量。在Python类中,可以在。方法中使用属性定义变量。并将其赋值给实例变量。原创 2024-08-02 20:52:53 · 405 阅读 · 0 评论 -
GNN提取特征代码片段
它的主要作用是提取图神经网络(GNN)模型的节点特征并将其保存为CSV文件,同时打印一些特征的信息。通过这些步骤,该函数成功地提取了训练数据中的节点特征,并将其保存为CSV文件,同时打印了一些特征的信息以供参考。,它的作用是从一个图神经网络(GNN)模型中提取特征。将所有提取的特征沿第0维度(通常是样本数量维度)拼接成一个大的特征矩阵。通过这些步骤,该函数成功地从GNN模型中提取并拼接了所有样本的特征。打印特征矩阵前3个样本的特征,方便查看特征的具体值。中提取GNN模型的节点特征,得到一个特征矩阵。原创 2024-08-02 20:12:00 · 1161 阅读 · 0 评论 -
textcoords=‘offset points‘, ha=‘left‘,va=‘bottom‘ 参数含义
这些参数用于控制中注释文本的位置和对齐方式。原创 2024-08-02 10:48:00 · 361 阅读 · 0 评论 -
matplotlib,使用subplot画两张图,第一张图100个原始数据,第二张图后80个数据,坐标轴0-100,图上显示80个数据
使用的代码会绘制data列表中第 21 到第 100 个数据点,并将它们映射到 x 轴的 21 到 100 之间。原创 2024-08-02 10:15:53 · 411 阅读 · 0 评论 -
Matplotlib中plt和ax的函数是一样得吗
如果你需要快速绘图或者只是做一些简单的图形操作,plt是很好的选择。如果你需要更细致的控制或者处理复杂的图形,使用ax可能会更合适。原创 2024-08-02 10:05:21 · 379 阅读 · 0 评论 -
Matplotlib中用于绘制垂直线的函数axvline的参数介绍
官方文档axvline是 Matplotlib 中用于在图形中绘制垂直线的函数。原创 2024-08-02 10:02:55 · 1068 阅读 · 0 评论 -
matplotLib在图中标出最后一个点的值
2f这段代码将最后一个数据点的值用放大的红色字体标注出来,并在图上用红圈圈出该点。是 Matplotlib 用于在图形上添加注释(文本)的函数。以下是。原创 2024-08-01 23:02:54 · 639 阅读 · 0 评论 -
python列表(list)切片,索引超出了列表的范围不会报错
这种行为是 Python 语言设计的一部分,旨在使列表切片操作更具弹性和容错性。切片操作将根据实际可用的元素返回部分列表或空列表,而不会抛出异常。)的切片时,即使索引超出了列表的范围,Python 也不会引发。,但列表的长度小于 5,那么 Python 将返回一个空列表。在 Python 中,当你尝试获取列表(例如,如果你有一个列表。原创 2024-08-01 20:17:56 · 754 阅读 · 0 评论 -
matplotlib设置xlim报错TypeError: ‘>‘ not supported between instances of ‘int‘ and ‘range‘
你应该传递范围的起点和终点作为两个整数,而不是。如果你想指定一个更明确的范围,比如从 1 到。需要两个整数参数来指定 x 轴的范围,但。这将 x 轴范围设置为从 1 到列表的长度。这段代码将 x 轴的范围设置为从 0 到。返回的是一个范围对象,而不是整数。,这样可以正确地绘制图形。的最大值,然后传递给。原创 2024-08-01 20:16:22 · 386 阅读 · 0 评论 -
【Torch】一行代码将神经网络模型输出转化为numpy格式进行分析
和是在使用 PyTorch 进行深度学习模型推理和数据转换时常见的操作。这些操作通常用于将模型的输出从 GPU 设备转移到 CPU,并将其从张量形式转换为 NumPy 数组。原创 2024-07-31 21:39:28 · 506 阅读 · 0 评论 -
【Python】选择数组特定的行组合在一起
【代码】【Python】选择数组特定的行组合在一起。原创 2024-07-31 16:03:46 · 340 阅读 · 0 评论 -
subplots的axs[i,j]报错IndexError: too many indices for array
报错信息:IndexError: too many indices for array: array is 1-dimensional, but 2 were indexed当你使用时,axs是一个包含 9 个对象的一维数组。此时axs的形状是(9,),表示有 9 个子图,每个子图在数组中的一个位置。要访问这些子图中的某一个,只需要一个索引,而不是两个。例如,axs[0]axs[1]等是单个子图的对象。而当axs是一个二维数组时,比如axs的形状为(2, 3),此时你可以用两个索引来访问特定的子图,比如。原创 2024-07-31 16:02:01 · 460 阅读 · 0 评论 -
NumPy 中 array[0:1] 和 array[0]
返回一个保留原始二维结构的子数组,其形状为(1, n)。返回一个一维数组,其形状为(n,)。这些差异在数据操作、矩阵运算等场景中非常重要,因为操作的对象维度不同,可能会导致不同的结果或错误。例如,在机器学习中处理批量数据时,通常希望保持数据的二维结构,即使批量大小为 1,也要返回(1, n)形状的数组,而不是一维数组(n,)。原创 2024-07-31 15:43:35 · 352 阅读 · 0 评论 -
【python】三种方式实现将2个3×5数组拼接形成6×5数组
函数用于沿着垂直(第一个)轴堆叠数组,它接受一个数组列表作为参数。沿着第一个维度进行拼接意味着要将原始数组的第一个维度扩展,从而将多个块沿着这个维度排列在一起。的数组,可以通过将前两个维度 “平铺” 成一个维度来实现。这个操作在保持数组数据顺序不变的情况下,将数组的形状调整为新的形状。数组中的两个块沿着第一个维度拼接在一起,生成一个新的。的块连接起来,形成一个新的形状为。的数组,这意味着将两个形状为。的数组垂直拼接成一个形状为。通过这种方法,您将原始的。的数组拼接成一个形状为。这样,您就可以将原始的。原创 2024-07-30 22:19:31 · 883 阅读 · 0 评论 -
【numpy】浮点数比较大小
对于浮点数的比较,由于浮点数的精度问题,直接比较可能会遇到精度不一致的情况。为了比较浮点数的大小,可以使用一定的容差范围,避免因微小的误差导致的错误判断。这样的方法可以帮助您在处理浮点数比较时避免由于精度问题引起的误差。函数可以方便地进行这种比较。原创 2024-07-30 21:04:14 · 480 阅读 · 0 评论 -
【python】把6*5的数组变成3个2*5的新数组,第一行和第四行在一起,第二行和第五行在一起,第三行和第六行在一起,以及更复杂的9*5如何用循环实现
数组,并且让原数组的第1行和第4行成为第一个新数组,第2行和第5行成为第二个新数组,第3行和第6行成为第三个新数组,可以使用NumPy的索引和切片功能。由于当前环境的限制,无法直接执行代码。这种方法利用了NumPy的高级索引功能,可以轻松地选择任意行的组合。您可以在本地运行这段代码,以查看和验证结果。表示对数组进行切片操作。会选择原始数组的第1、4、7行。的数组变换为三个新的。在NumPy中,语法。原创 2024-07-30 21:00:59 · 338 阅读 · 0 评论 -
一层5x1神经网络绘制训练100轮后权重变化的图像
要完成这个任务,我们可以使用Python中的PyTorch库来建立一个简单的神经网络,网络结构只有一个输入层和一个输出层,输入层有5个节点,输出层有1个节点。你可以看到,权重随着训练过程呈现不同程度的变化,这反映了模型在尝试适应数据的过程中权重的更新情况。,它实际上在每一训练轮次中选取一个特定的输入权重,并跟踪这个权重是如何随着时间变化的。在上面的代码中,这种方式被用来绘制每个输入对应权重随训练轮次变化的图形,展示了每个权重如何随着模型训练进行而更新。用于从存储的权重历史记录中提取特定的权重值,以便绘制。原创 2024-07-30 16:07:09 · 730 阅读 · 0 评论 -
Python模块中的全局变量
在Python中,模块中的全局变量是可以在同一个模块中的函数中使用的。全局变量的作用域是模块范围内的,这意味着在同一个模块中的函数和其他代码都可以访问这些全局变量。: 虽然可以使用全局变量,但不建议滥用它们,因为这可能会导致命名冲突和代码难以维护。关键字来声明对该全局变量的修改权限,否则 Python 会认为你在函数内部创建了一个同名的局部变量,而不会修改全局变量。通过以上的方式,模块中的全局变量可以在同一个模块的函数中被访问和修改。: 如果函数需要修改模块中的全局变量,你必须在函数内部使用。原创 2024-07-30 15:42:09 · 369 阅读 · 0 评论 -
Pytorch代码:打印模型每层的参数数量和总参数量
【代码】Pytorch代码:打印模型每层的参数数量和总参数量。原创 2024-07-30 15:16:38 · 849 阅读 · 0 评论 -
Python中变量名和类名相同引起混乱
覆盖类名可能会导致后续代码中的混淆,因为你无法再使用原来的类名来创建新的实例或访问类属性。因此,为了代码的清晰性和可维护性,建议使用不同的名称来避免这种情况。在Python中,变量名和类名可以相同,但这样做通常会导致代码的混淆和错误。因此,最好避免使用相同的名称。这样的命名方式来区分类名和实例名。原创 2024-07-30 15:02:39 · 257 阅读 · 0 评论 -
Python中一个模块中导入了库只在该模块的范围内可用,主文件不会导入模块中导入的库
在Python中,每个模块或脚本都有自己的命名空间。即使在一个模块中导入了某些库,这些库的导入只在该模块的命名空间内有效,而不会自动扩展到其他模块或脚本中。因此,如果你在主文件中需要使用某个库,即使这个库在导入的模块中已经被导入过,你也需要在主文件中再次导入该库。在Python中,如果你在一个模块中导入了库,那么这些导入的库只在该模块的范围内可用。如果你想在另一个模块或主文件中使用这些库,你仍然需要在相应的文件中导入它们。这是因为导入的库在Python中是模块范围的,不会自动传递到其他模块或脚本中。原创 2024-07-30 14:59:43 · 199 阅读 · 0 评论 -
Python中在函数内部导入库
因此,尽管在函数内部导入库是完全合法的,有时在模块的开头集中导入所有所需的库会更合适。是的,在Python中,你可以在函数内部导入库。函数内部导入的,因此只有在调用。原创 2024-07-30 14:55:22 · 471 阅读 · 0 评论 -
python报错Features() takes 2 positional arguments but 3 were given
定义一个PLot()类,里面定义一个方法 plotFeatures(features, file_path),调用plotFeatures(train_features, “train_features”)时报错TypeError: plotFeatures() takes 2 positional arguments but 3 were given。类中方法的定义没有添加self,应该为 plotFeatures(self, features, file_path)节选靠谱的chatgpt答案。原创 2024-07-29 23:11:30 · 485 阅读 · 0 评论 -
了解ChatGPT API
通过这些资源,你可以获得关于如何使用 ChatGPT API 的深入理解和实际操作经验。从基础的 API 调用到构建复杂的系统,这些资源都可以提供必要的帮助和指导。要了解如何使用 ChatGPT API,可以参考几个有用的资源和教程,这些资源能帮助你快速开始使用 API 进行项目开发。原创 2024-07-25 14:03:21 · 1098 阅读 · 0 评论 -
解决seaborn使用kdeplot绘制两条曲线相同颜色
办法:查看数据的形状,必须是一维的,shape是(1000,)而不是(1000,1)的二维数据,如果数据形状是(1000,1)可以用train_data[:,0]提取一维数据。问题:想画两条曲线对比图,两条曲线颜色相同。原创 2024-07-24 16:23:03 · 282 阅读 · 0 评论 -
Adam 和 RMSprop优化算法
RMSprop 是一个非常有效的、但相对简单的适应性学习率方法。Adam 在 RMSprop 的基础上增加了动量项,通常提供更好的稳定性。在实际应用中,Adam 是更受欢迎的选择,因为它通常能够更快地收敛,尤其是在复杂的深度学习模型中。在选择优化算法时,考虑具体问题的性质是很重要的,有时候可能需要通过实验来决定使用哪种算法。原创 2024-07-24 10:39:16 · 1213 阅读 · 0 评论 -
python深拷贝和浅拷贝,列表a = b,修改a的值,b也会变吗
在 Python 中,当你使用a = b这样的赋值操作时,a和b实际上指向的是同一个内存中的对象。因此,如果你之后修改了a所指向的对象的内容,b也会看到这些更改,因为它们都引用了同一个对象。这种行为在处理可变数据类型(如列表、字典、集合等)时特别明显。原创 2024-07-24 10:31:52 · 599 阅读 · 0 评论 -
optimizer为什么要绑定model
绑定优化器到特定模型是必需的,因为这样可以确保优化器准确、高效地更新正确的模型参数。这是训练任何机器学习模型的基本和关键部分。原创 2024-07-24 10:30:27 · 311 阅读 · 0 评论 -
scikit-learn中fit_transform会改变原始数据吗
在 Python 的库中,方法通常用于数据预处理阶段,比如在标准化、归一化、进行主成分分析(PCA)或其他转换时使用。这个方法同时执行fit方法和transformfittransformfit。原创 2024-07-23 21:13:26 · 632 阅读 · 0 评论 -
解决MinMaxScaler报错Expected 2D array, got 1D array instead
想取出二维数组的一列单独做归一化,原因是使用X_scaled[:,i]返回一列数据,X_scaled[:,[i]]维持形状不变,想消除报错应该是scaler_target.fit_transform(x_list[:,[i]]),i].shape在使用 Python 的 NumPy 库或 PyTorch 框架等进行数组或张量操作时,x[:, [0]]和x[:, 0]这两种索引方式虽然看起来相似,但它们之间存在一些关键的差异,同时也有联系。原创 2024-07-23 16:05:59 · 510 阅读 · 0 评论 -
【TORCH】pickle压缩和解压文件
pickle压缩文件打开压缩的 pickle 文件并加载数据在使用 Python 中的pickle库从压缩文件中加载数据时,了解加载后的数据的格式和结构非常重要。这有助于你正确地处理和使用这些数据。下面我将介绍如何查看使用加载的数据的格式,以及如何确定它是否适合用于创建。原创 2024-07-22 16:08:45 · 453 阅读 · 0 评论 -
参数解包data = (x_train, y_train),dataset = TensorDataset(*data)
使用*data是一种在调用函数时有效传递组成元素的方法,特别是当你已经有一个元组或列表,其中包含需要作为独立参数传递的数据时。这种方法在 Python 编程中非常有用,可以灵活处理多参数问题,特别是在处理数据集对象或进行函数调用时处理多数据流。原创 2024-07-22 15:59:51 · 276 阅读 · 0 评论 -
【TORCH】索引x[:, [0]]与x[:, 0]
在使用 Python 的 NumPy 库或 PyTorch 框架等进行数组或张量操作时,x[:, [0]]和x[:, 0]这两种索引方式虽然看起来相似,但它们之间存在一些关键的差异,同时也有联系。原创 2024-07-22 15:38:27 · 228 阅读 · 0 评论