- 博客(32)
- 收藏
- 关注
原创 开源一个跨平台 XPS 数据后处理软件:OpenXPSAnalyzer
OpenXPSAnalyzer 是一款基于 Python 和 Flet 的跨平台 XPS 数据后处理软件,可读取 Avantage 导出的 Excel 数据,实现谱图查看、峰位与拟合质量分析、分峰统计、交互式浏览及出版级绘图,并利用 xarray 和 NetCDF-4 管理项目数据,支持多格式导出。
2026-09-01 14:49:47
375
原创 逻辑回归从原理到实战:损失函数推导、梯度下降与正则化全解析
本文从最大似然估计出发,推导出逻辑回归的交叉熵损失函数,并分析了其指数级惩罚错误预测的特性。通过手写实现梯度下降训练过程,展示了参数更新的数学推导和代码细节,比较了全批量梯度下降(BGD)与随机梯度下降(SGD)在计算效率、收敛路径等方面的差异。BGD每次使用全部样本更新参数,梯度精确但计算量大;SGD每次随机采样单个样本,计算高效但梯度存在噪声。文中还强调了损失函数数值与导数的区别,以及工程实现中的数值稳定性处理技巧。
2026-08-10 00:54:41
371
原创 从零推导感知器(Perceptron):隐藏的损失函数、设计哲学与收敛性
摘要 感知器(Perceptron)是Frank Rosenblatt于1958年提出的首个可学习的线性分类模型。本文通过分析感知器的Python实现代码,揭示了其与Adaline模型的关键差异:感知器基于阈值化后的离散标签更新权重,而Adaline使用激活前的连续输出。感知器背后隐藏的"感知器准则"损失函数虽然缺乏严格数学基础,但通过次梯度下降实现了有效的在线学习。其权重更新公式Δw=η·(target-predict(xi))·xi体现了赫布学习规则,具有明确的几何解释和生物学基础。感知器与Adalin
2026-08-08 12:20:11
382
原创 从零推导 Adaline 自适应线性神经元:数学原理、NumPy 矩阵运算与超参数调优实战
本文详细介绍了Adaline自适应线性神经元的数学原理与实现。作为感知器的重要改进,Adaline首次引入连续可导的损失函数与梯度下降方法,奠定了神经网络训练的基础框架。文章从代码实现出发,系统推导了Adaline的均方误差损失函数及其梯度公式,解释了平方误差和1/(2n)系数的设计考量。通过严格的数学证明,阐明了梯度下降能保证损失函数单调下降的原理。最后针对NumPy矩阵运算中的常见误区,特别指出一维数组与行列向量的本质区别。全文以鸢尾花数据集为案例,展示了Adaline从理论推导到实战应用的全过程。
2026-08-07 17:56:49
394
原创 Marimo JetBrains IDE 插件已经可用
Marimo作为新一代Python笔记本工具,相比Jupyter Notebook具有更严格的变量检查、响应式执行模型和更好的可维护性。其笔记本采用标准.py文件格式,便于版本控制。最新推出的JetBrains IDE插件让用户可以直接在PyCharm等IDE中编辑和运行Marimo笔记本,无需切换浏览器。这一集成既保留了笔记本的交互特性,又能利用IDE的代码补全、重构等功能,实现探索性分析与工程化开发的统一,显著提升开发效率。插件安装简单,支持新建和编辑现有Marimo笔记本。
2026-07-25 23:48:52
279
原创 Python 数据处理工作流:marimo、PyCharm 与数据存储
本文介绍了一套成熟的Python数据处理工作流,涵盖数据读取、清洗、分析到可视化的完整流程。开发环境采用marimo笔记本进行交互式数据分析(相比Jupyter更具响应性和确定性),配合PyCharm完成脚本开发和数据库操作,使用uv管理Python环境和项目依赖。数据读取推荐使用pandas和pathlib.Path,强调保持原始数据的完整性并建立清晰的处理流程(raw/interim/processed目录结构)。分析阶段结合pandas、NumPy和SciPy的优势,分别处理表格数据、数值计算和科学计
2026-07-12 01:01:04
639
原创 xarray:为多维科研数据建立带标签的数据模型
xarray:带标签的多维科研数据模型 xarray 是针对多维科研数据设计的 Python 库,它在 NumPy 数组基础上建立了带语义的数据层,解决了传统二维表格工具在处理高维数据时的局限性。其核心特点包括: 语义化维度:通过命名维度(如time/latitude)替代传统数组的轴索引,使代码更具可读性且不受维度顺序变化影响 坐标系统:支持多维坐标标签和自动对齐功能,确保不同来源数据能正确匹配 分层设计:数据模型与计算引擎分离,支持NumPy/Dask/CuPy等多种后端 完整工具链:提供从数据I/O(
2026-07-11 20:08:37
388
原创 Marimo制作一个简单的实验日志记录器
摘要:本文介绍了一个基于Marimo框架的实验日志记录应用界面实现。该应用包含日期选择、实验项目和实验记录输入表单,数据存储采用SQLite数据库。代码展示了数据库表创建、表单组件生成、数据验证和提交功能,支持自动创建数据库路径。应用通过调用out组件提供操作反馈,使用vstack布局表单元素。部署时需安装Marimo环境,可通过修改db_path变量指定数据库存储位置。整个实现体现了简洁的Pythonic风格,将前端界面与后端存储有效结合。
2026-07-06 17:07:50
233
原创 使用Python提取PDF卡片
本文介绍了一个用于解析XRD PDF卡片的Python脚本工具。该工具采用逐行处理机制,能精准解析包含衍射数据的PDF卡片文件,支持多种文本编码格式和数据结构变体。主要功能包括:1. 支持解析单文件、多文件批处理和全目录扫描;2. 自动提取卡片编号、材料名称、化学式和元数据;3. 结构化输出衍射数据(2θ、d值、强度、hkl指数等);4. 提供灵活的容错机制和异常行报告。使用方法包括初始化解析器、解析单个文件或整个目录、查找卡片文件等。解析结果以PDFCardResult对象返回,包含所有解析数据和元信息,
2026-07-01 11:27:34
543
原创 OriginPro与Python联用(Chapter 1)
摘要:本文介绍了如何通过Python的originpro模块与Origin软件交互,结合二者在数据处理和可视化方面的优势。originpro包支持在外部Python环境中控制Origin 2021+版本,实现数据读写、图表创建等功能。文章概述了安装条件(Windows系统+Origin软件)和使用方法,包括启动连接、数据写入、列类型设置及图表生成等操作流程,并提供了代码示例演示如何将Pandas数据导入Origin并绘图。最后强调需使用op.exit()正确退出程序。
2026-04-13 00:12:52
832
原创 Quarto与Python集成使用
本文介绍了Quarto文档系统的安装配置与Python环境搭建方法。Quarto作为命令行工具需要配合文本编辑器使用,推荐VS Code或Positron作为IDE。安装Quarto CLI后,通过创建.qmd文件编写文档,支持在代码块中运行Python脚本并可视化结果。文章详细说明了使用uv工具创建Python虚拟环境的步骤,并提供了绘制心形图的完整代码示例,展示了Quarto如何将代码、文档和可视化结果整合输出。最后指引读者参考官方文档学习更多qmd文件编写技巧。
2026-03-22 17:00:33
393
原创 Python一站式科研工作流:从数据分析到报告生成
摘要:本文提出基于Python的集成化科研工作流程,通过VSCode等IDE整合Jupyter Notebook、Python脚本和Quarto工具,实现从数据提取、分析到可视化、报告生成的全流程一站式操作。该方案支持LaTeX排版、动态可视化及多种格式输出,显著提升科研效率,尤其适用于需要结果复现的大规模数据处理。虽然学习曲线较传统软件更陡峭,但长期使用能有效减少软件切换带来的效率损耗。
2026-03-22 15:27:30
876
原创 SRIM通过python计算dap
本文介绍了一个用于处理SRIM模拟数据的Python工具类Damage,主要功能包括:1. 从SRIM的VACANCY.txt文件中提取深度、离子空位和反冲空位数据;2. 计算损伤量(DPA)分布;3. 快速绘制DPA-深度曲线图。该类封装了数据读取、计算和可视化功能,使用时需提供SRIM文件路径、离子注量和材料原子密度参数。代码采用中文列名映射,并配置了中文字体显示支持。需要注意的是,虽然经过初步验证,但作者不保证计算结果的绝对准确性,建议用户在使用前进行测试验证。该工具适用于SRIM模拟数据的后处理分析
2025-12-24 20:29:52
425
原创 文献分区及影响因子批量查询
本文介绍了一个自动化文献分析工具,通过Python模块实现批量处理PDF文献、提取DOI信息、查询期刊影响因子等功能。该工具整合了Crossref和EasyScholar API,支持多线程处理,自动生成包含统计图表和数据分析的Word/Excel报告。主要特点包括:1)自动提取PDF文献的标题和DOI;2)批量查询期刊影响因子和分区信息;3)内置数据清洗功能;4)可视化分析结果输出。使用前需配置EasyScholar密钥,运行后即可快速生成文献分析报告,显著提升科研文献管理效率。
2025-12-17 14:40:15
464
原创 SRIM数据处理(Stopping Range Tables)
摘要:本文介绍了一个稳健的SRIM数据解析函数,用于处理SRIM输出文件中的能量、阻止本领和射程等数据。该函数能自动识别keV/MeV能量单位和Å/µm射程单位,并将其转换为统一单位(keV和Å)存储在pandas DataFrame中。函数使用正则表达式匹配数据行,包含能量转换和射程转换功能,最终输出包含6列数据的表格:能量(keV)、电子阻止本领、核阻止本领、投影射程、纵向离散和横向离散。解析后的数据可方便地保存为CSV文件或进行后续分析绘图。
2025-11-26 09:58:27
325
原创 Python中使用sqlite3模块和panel完成SQLite数据库中PDF的写入和读取
本文介绍了一种基于SQLite数据库管理PDF等非文本文件的方法。文章对比了Notion等笔记软件的局限性,指出SQLite作为轻量级数据库引擎的优势,包括自包含、零配置等特性。详细说明了使用Python和SQLite进行数据库操作的技术实现步骤:1)创建/连接数据库;2)建立数据表结构;3)写入PDF文件及说明文本;4)读取数据库内容。最后展示了如何使用Panel库将数据库中的PDF文件以网页形式预览,通过Base64编码转换,实现PDF文件的在线查看功能。该方法结合SQLite的便捷性和Python的灵
2025-11-09 12:27:01
1128
原创 如何在Ubuntu畅玩鸣潮等游戏
本教程介绍在Ubuntu上通过Steam运行带反作弊游戏的方法。首先安装Steam并下载游戏,随后配置Flatpak环境并安装ProtonUp-Qt工具。通过该工具安装社区优化版Proton-GE兼容层,最后为游戏设置启动参数"STEAMDECK=1%command%"来绕过反作弊检测。文中还提供了常见问题解决方案,包括应用显示异常、游戏闪退等问题,并说明该方法理论上封号风险较低。整个过程无需破解,通过兼容层实现游戏运行。
2025-09-07 08:38:08
4622
原创 Latex 标记语言
本文系统介绍了LaTeX排版工具的使用方法。主要内容包括:LaTeX的特点与功能,适合处理科技文档;Windows和Linux平台下MiKTeX和TeXLive的安装配置;推荐使用VS Code和TeXStudio等编辑器;提供基础文档模板及语法解析;介绍项目文件结构管理;特别说明中文文档需使用XeLaTeX引擎编译,推荐ctex宏包套装。文章还涉及数学公式、列表、图片插入等常用功能,适合从入门到进阶的LaTeX学习者参考。
2025-08-30 14:29:45
1090
原创 机器学习笔记——基本概念和类型
本文介绍了机器学习的基本概念和Python实现方法。机器学习分为监督学习、无监督学习和强化学习三种类型,各自适用于不同任务。文章明确了机器学习术语和符号系统,解释了训练样例、特征、目标等核心概念。在Python实现方面,介绍了Numpy、Scikit-Learn、PyTorch等主流库的特点和用途,其中Scikit-Learn是最流行的机器学习库,PyTorch以其灵活性和动态计算图著称。这些工具库为机器学习研究开发提供了高效支持,可通过pip或conda安装使用。
2025-08-25 15:45:19
311
原创 我的创作纪念日
摘要:作者分享了自己在学习过程中通过记录笔记和分享小项目的收获。创作不仅帮助复习知识,获得认可也带来快乐。从Python语法到数据处理、Shell命令等,持续学习带来了成长。未来希望进一步探索数据处理和人工智能领域,保持对学习的热情。
2025-08-23 14:56:37
207
原创 使用Python创建自己的聊天机器人
本文介绍了一个基于Python和通义千问API开发的桌面聊天机器人应用"Alice"。该程序采用tkinter构建GUI界面,支持自定义API密钥路径、角色形象、背景图片和对话历史长度等个性化设置。核心功能模块Alice类实现了对话记忆管理、API调用和错误处理等功能,主程序通过异步线程处理用户消息并显示AI回复。项目结构清晰,只需安装openai库即可运行,适合作为入门级AI助手开发参考。
2025-08-23 14:34:40
1140
原创 使用Python结合大模型创建自己的人工智能助手(喵娘)
本文介绍了如何通过阿里云API调用通义千问大模型构建智能助手。主要内容包括:1)在阿里云官网获取API密钥和免费额度;2)构建Miya智能助手类,封装API调用、密钥读取和对话处理功能;3)示例主程序演示如何初始化角色设定(如"喵娘")并实现交互对话。文中提供了密钥管理建议和错误处理机制,并说明可通过修改sys_content参数灵活调整角色设定。使用前需注意将密钥保存为txt文件并配置正确路径。
2025-08-21 19:40:32
643
原创 Latex在VScode中无法正确显示参考文献的解决方法
摘要:使用LaTeX时遇到文献引用无法正确显示的问题,即使bib文件和引用语法都正确。解决方案是改用TexWorks编译,具体步骤为:先用XeLaTeX编译,再用BibTeX编译,最后再用XeLaTeX编译(可重复多次)。也可使用TexStudio编译,但需要相应设置。
2025-07-22 17:08:07
1081
原创 WSL(微软Linux子系统)简单使用笔记
文章介绍在Win11上安装WSL并安装微信,qq,anaconda等应用,另外,我使用的win11版本为24H2。必须运行 Windows 10 版本 2004 及更高版本(内部版本 19041 及更高版本)或 Windows 11 才能使用以下命令。如果使用的是更早的版本,请参阅。
2025-02-09 18:10:37
1983
原创 MySql实现文献计数,用于文献阅读数量记录
本文档将在本地数据库中创建一个表格,在使用时请确保数据库配置完成,并使用命令USE选择所需创建表格的数据库。这个数据库表格用于实现:每天自动进行一次记录文献阅读数量,如果没有手动写入,则为0.在本地部署的MySQL数据库中创建一个表格:设置一个开始日期,比如三天前,然后它会自动生成三列,即id,日期,文献数量,其中文献数量默认值为0,也就是不阅读的话就是0,如果阅读了,则需要手动更改它的值,也就是说这份表格完全是自动生成,只有需要时才需要更改。
2024-12-22 09:24:46
825
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅