数据分析——学习框架
✅作者简介:2022年博客新星 第八。热爱国学的Java后端开发者,修心和技术同步精进。
🍎个人主页:Java Fans的博客
🍊个人信条:不迁怒,不贰过。小知识,大智慧。
💞当前专栏:Java案例分享专栏
✨特色专栏:国学周更-心性养成之路
🥭本文内容:数据分析——学习框架
文章目录
- 引言
- 1. 数据收集
- 1.1. 调查问卷
- 1.2. 网络爬虫
- 1.3. 数据库查询
- 1.4. API 接口
- 1.5. 其他数据收集方法
- 2. 数据清洗
- 2.1. 处理缺失值
- 2.2. 去除重复数据
- 2.3. 数据格式转换
- 2.4. 异常值检测
- 2.5. 数据标准化与归一化
- 3. 数据分析
- 3.1. 描述性统计
- 3.2. 探索性数据分析 (EDA)
- 3.3. 假设检验
- 3.4. 回归分析
- 3.5. 分类与聚类
- 4. 数据可视化
- 4.1. 数据可视化的目的
- 4.2. 常用数据可视化工具
- 4.3. 常见图表类型
- 4.4. 数据可视化的最佳实践
- 5. 数据报告
- 5.1. 数据报告的目的
- 5.2. 数据报告的结构
- 5.3. 数据报告的格式
- 5.4. 数据报告的最佳实践
- 结论
引言
在当今数据驱动的时代,数据分析已成为各行各业不可或缺的核心能力。随着信息技术的迅猛发展,企业和组织面临着前所未有的数据量和复杂性。有效的数据分析不仅能够帮助我们理解过去的趋势,还能为未来的决策提供科学依据。无论是在市场营销、金融、医疗、教育还是其他领域,数据分析都能揭示隐藏在数据背后的洞察,推动业务增长和创新。
本教程旨在为读者提供一个系统化的数据分析学习框架,涵盖从数据收集、清洗、分析到可视化和报告的各个环节。通过深入探讨每个环节的理论与实践,读者将能够掌握数据分析的基本技能,提升数据处理和分析的能力。无论您是数据分析的初学者,还是希望进一步提升技能的专业人士,本教程都将为您提供有价值的指导和实用的工具,助您在数据分析的旅程中取得成功。
1. 数据收集
数据收集是数据分析的第一步,涉及到从各种来源获取数据的过程。
1.1. 调查问卷
调查问卷是一种常用的数据收集方法,适用于获取用户反馈和意见。设计有效的问卷需要注意以下几点:
- 问题设计:确保问题简洁明了,避免引导性问题。
- 问卷类型:
- 开放式问题:允许受访者自由表达意见。
- 封闭式问题:提供选项供受访者选择。
- 样本选择:确保样本具有代表性,以提高结果的可靠性。
- 数据收集工具:使用在线工具(如 Google Forms、SurveyMonkey)方便数据收集和分析。
1.2. 网络爬虫
网络爬虫是一种自动化技术,用于从互联网上提取数据。使用网络爬虫时需要考虑以下方面:
- 爬虫框架:选择合适的爬虫框架(如 Scrapy、Beautiful Soup)来简化开发过程。
- 遵循网站协议:遵守网站的
robots.txt
文件,确保合法抓取数据。 - 数据存储:选择合适的存储方式(如数据库、CSV 文件)保存抓取的数据。
- 数据清洗:抓取的数据往往需要清洗,以去除无用信息和格式化数据。
1.3. 数据库查询
从已有的数据库中提取数据是企业内部数据分析的常见方法。关键点包括:
- SQL 查询:使用 SQL 语言编写查询语句,从关系型数据库中提取数据。
- 数据建模:理解数据库的结构和关系,以便高效查询。
- 性能优化:使用索引、视图等技术优化查询性能。
- 数据安全:确保数据访问权限和安全性,防止数据泄露。
1.4. API 接口
通过调用第三方服务的 API 获取数据是一种灵活的方式,适用于社交媒体分析和实时数据获取。需要注意的方面包括:
- API 文档:仔细阅读 API 文档,了解可用的端点和请求参数。
- 身份验证:许多 API 需要身份验证(如 OAuth、API Key),确保安全访问。
- 数据格式:了解返回的数据格式(如 JSON、XML),以便进行后续处理。
- 速率限制:注意 API 的调用频率限制,避免被封禁。
1.5. 其他数据收集方法
除了上述方法,还有其他数据收集方式:
- 社交媒体分析:通过社交媒体平台获取用户行为和反馈数据。
- 传感器数据:通过物联网设备收集实时数据,适用于智能城市和环境监测。
- 公开数据集:利用政府、研究机构等发布的公开数据集进行分析。
2. 数据清洗
数据清洗是数据分析过程中至关重要的一步,旨在提高数据质量,确保分析结果的准确性和可靠性。数据清洗的主要任务包括处理缺失值、去除重复数据、数据格式转换和异常值检测等。
2.1. 处理缺失值
缺失值是数据集中常见的问题,处理缺失值的方法主要有:
-
删除缺失值:
- 行删除:如果缺失值的比例较小,可以选择删除包含缺失值的行。
- 列删除:如果某一列的缺失值比例过高,可以考虑删除该列。
-
填充缺失值:
- 均值/中位数填充:对于数值型数据,可以用均值或中位数填充缺失值。
- 众数填充:对于分类数据,可以用众数填充缺失值。
- 插值法:使用线性插值或其他插值方法填充缺失值。
-
预测填充:使用机器学习模型预测缺失值,适用于缺失值较多且数据量大的情况。
2.2. 去除重复数据
重复数据会导致分析结果的偏差,因此需要进行去重处理。去重的方法包括:
- 完全重复:检查数据集中是否存在完全相同的行,并删除重复行。
- 部分重复:根据特定的列(如用户ID、时间戳等)检查重复,保留最新或最相关的记录。
2.3. 数据格式转换
确保数据格式一致是数据清洗的重要环节,主要包括:
- 日期格式统一:将不同格式的日期(如
YYYY-MM-DD
、MM/DD/YYYY
)转换为统一格式。 - 字符串处理:去除字符串中的空格、特殊字符,确保数据的整洁性。
- 数据类型转换:将数据类型转换为合适的格式,例如将字符串转换为数值型,或将数值型转换为分类型。
2.4. 异常值检测
异常值可能会影响分析结果,因此需要进行检测和处理。常用的方法包括:
-
统计方法:
- Z-score:计算每个数据点的 Z-score,判断是否超过设定的阈值(如 3)来识别异常值。
- IQR 方法:计算四分位数,识别超出 Q 1 − 1.5 × I Q R Q1 - 1.5 \times IQR Q1−1.5×IQR 和 Q 3 + 1.5 × I Q R Q3 + 1.5 \times IQR Q3+1.5×IQR 的数据点。
-
可视化方法:
- 箱线图:通过箱线图可视化数据分布,直观识别异常值。
- 散点图:通过散点图观察数据点的分布,识别离群点。
-
处理异常值:
- 删除:如果异常值是由于数据录入错误导致的,可以选择删除。
- 替换:用均值、中位数等替换异常值,避免对分析结果的影响。
2.5. 数据标准化与归一化
在进行数据分析和建模之前,标准化和归一化可以帮助提高模型的性能:
-
标准化:将数据转换为均值为 0,标准差为 1 的分布,适用于大多数机器学习算法。
- 公式: Z = ( X − μ ) σ Z = \frac{(X - \mu)}{\sigma} Z=σ(X−μ),其中 X X X 是原始数据, μ \mu μ 是均值, σ \sigma σ 是标准差。
-
归一化:将数据缩放到 [0, 1] 的范围,适用于需要计算距离的算法(如 K-means)。
- 公式: X ′ = ( X − X m i n ) ( X m a x − X m i n ) X' = \frac{(X - X_{min})}{(X_{max} - X_{min})} X′=(Xmax−Xmin)(X−Xmin),其中 X ′ X' X′ 是归一化后的数据。
3. 数据分析
数据分析是从数据中提取有价值信息的过程,旨在帮助决策者做出明智的选择。数据分析的步骤通常包括描述性统计、探索性数据分析(EDA)、假设检验、回归分析以及分类与聚类等。
3.1. 描述性统计
描述性统计是对数据集进行基本总结和描述的过程,主要包括以下几个方面:
-
集中趋势:
- 均值:数据的算术平均值,反映数据的中心位置。
- 中位数:将数据按大小排序后位于中间的值,适用于偏态分布的数据。
- 众数:数据中出现频率最高的值,适用于分类数据。
-
离散程度:
- 标准差:反映数据的离散程度,标准差越大,数据分布越分散。
- 方差:标准差的平方,表示数据点与均值的偏离程度。
- 极差:数据集中最大值与最小值的差,反映数据的范围。
-
分位数:
- 四分位数:将数据分为四个部分的值,包括第一四分位数(Q1)、第二四分位数(Q2,等于中位数)和第三四分位数(Q3)。
3.2. 探索性数据分析 (EDA)
探索性数据分析是通过可视化和统计方法探索数据集中的模式、关系和异常值。主要步骤包括:
-
数据可视化:
- 直方图:展示数据分布的频率,适用于了解数据的分布形态。
- 散点图:用于观察两个变量之间的关系,识别潜在的相关性。
- 箱线图:用于展示数据的分布情况,包括中位数、四分位数和异常值。
-
相关性分析:
- 皮尔逊相关系数:用于衡量两个变量之间的线性关系,值范围在 -1 到 1 之间。
- 热力图:通过颜色深浅展示变量之间的相关性,便于快速识别强相关的变量。
3.3. 假设检验
假设检验是通过统计方法验证假设的过程,主要包括以下步骤:
-
设定假设:
- 零假设 (H0):通常表示没有效应或没有差异的假设。
- 备择假设 (H1):表示存在效应或存在差异的假设。
-
选择检验方法:
- t 检验:用于比较两个样本均值是否存在显著差异。
- 卡方检验:用于检验分类变量之间的独立性。
- ANOVA(方差分析):用于比较三个或更多样本均值的差异。
-
计算 p 值:根据选择的检验方法计算 p 值,判断是否拒绝零假设。
-
结果解释:根据 p 值和显著性水平(如 0.05)判断结果的显著性。
3.4. 回归分析
回归分析用于研究自变量与因变量之间的关系,主要包括:
-
线性回归:
- 简单线性回归:用于分析一个自变量与一个因变量之间的线性关系,模型形式为 Y = β 0 + β 1 X + ϵ Y = \beta_0 + \beta_1 X + \epsilon Y=β0+β1X+ϵ。
- 多元线性回归:用于分析多个自变量与一个因变量之间的关系,模型形式为 Y = β 0 + β 1 X 1 + β 2 X 2 + . . . + β n X n + ϵ Y = \beta_0 + \beta_1 X_1 + \beta_2 X_2 + ... + \beta_n X_n + \epsilon Y=β0+β1X1+β2X2+...+βnXn+ϵ。
-
回归模型评估:
- R² 值:表示模型解释的变异比例,值越接近 1 表示模型拟合越好。
- 残差分析:检查残差的分布,判断模型的假设是否成立。
3.5. 分类与聚类
分类与聚类是机器学习中的重要任务,主要包括:
-
分类:
- 决策树:通过树形结构进行分类,易于解释和可视化。
- 随机森林:集成多个决策树,提高分类的准确性。
- 支持向量机 (SVM):通过构建超平面进行分类,适用于高维数据。
-
聚类:
- K-means 聚类:通过最小化样本到聚类中心的距离进行聚类,适用于大规模数据。
- 层次聚类:通过构建树状结构进行聚类,适用于小规模数据。
- DBSCAN:基于密度的聚类方法,能够识别任意形状的聚类。
4. 数据可视化
数据可视化是将数据以图形化的方式呈现,以便于理解、分析和沟通。通过可视化,复杂的数据集可以变得更加直观,帮助决策者快速识别趋势、模式和异常值。以下是数据可视化的详细阐述,包括可视化的目的、常用工具、图表类型以及最佳实践。
4.1. 数据可视化的目的
数据可视化的主要目的是:
- 简化数据理解:通过图形化展示,帮助用户更容易理解复杂的数据集。
- 识别趋势和模式:通过可视化,快速识别数据中的趋势、周期性和模式。
- 发现异常值:通过图表,直观地发现数据中的异常值和离群点。
- 支持决策:为决策者提供清晰的信息,帮助他们做出更明智的决策。
4.2. 常用数据可视化工具
以下是一些常用的数据可视化工具:
- Matplotlib:Python 中的基础绘图库,适合创建静态图表。
- Seaborn:基于 Matplotlib 的高级可视化库,适合绘制统计图表,提供更美观的默认样式。
- Tableau:强大的商业智能工具,适合创建交互式仪表板,支持多种数据源。
- Power BI:微软的商业分析工具,适合数据可视化和报告生成,集成了多种数据处理功能。
- D3.js:基于 JavaScript 的数据可视化库,适合创建高度自定义的交互式图表。
4.3. 常见图表类型
不同类型的数据可视化图表适用于不同的数据和分析需求,以下是一些常见的图表类型:
条形图
- 用途:用于比较不同类别的数据。
- 特点:条形的长度表示数值的大小,适合展示离散数据。
直方图
- 用途:用于展示数值型数据的分布情况。
- 特点:将数据分为若干区间(桶),展示每个区间的频率。
折线图
- 用途:用于展示数据随时间变化的趋势。
- 特点:通过连接数据点的线条展示变化趋势,适合时间序列数据。
散点图
- 用途:用于展示两个变量之间的关系。
- 特点:每个点表示一个数据点,适合识别相关性和异常值。
箱线图
- 用途:用于展示数据的分布情况,包括中位数、四分位数和异常值。
- 特点:通过箱体和须展示数据的集中趋势和离散程度。
热力图
- 用途:用于展示变量之间的相关性或频率。
- 特点:通过颜色深浅表示数值的大小,适合展示矩阵数据。
饼图
- 用途:用于展示各部分占整体的比例。
- 特点:通过扇形的面积表示比例,适合展示少量类别的数据。
4.4. 数据可视化的最佳实践
为了确保数据可视化的有效性,以下是一些最佳实践:
- 明确目标:在创建可视化之前,明确可视化的目的和受众,以便选择合适的图表类型。
- 简洁明了:避免过于复杂的图表,保持设计简洁,突出关键信息。
- 使用合适的颜色:选择合适的颜色方案,确保图表的可读性和美观性,避免使用过多的颜色。
- 添加标签和注释:为图表添加清晰的标题、轴标签和注释,以便观众理解数据的含义。
- 考虑交互性:在使用交互式工具时,考虑添加过滤器、工具提示和动态更新,以增强用户体验。
- 测试和反馈:在发布可视化之前,进行测试并收集反馈,确保可视化的有效性和易用性。
5. 数据报告
数据报告是将数据分析结果以结构化的方式呈现给目标受众的文档或演示。一个有效的数据报告不仅要清晰地传达分析结果,还要提供背景信息、方法论和建议,以便决策者能够做出明智的选择。以下是数据报告的详细阐述,包括报告的结构、内容、格式和最佳实践。
5.1. 数据报告的目的
数据报告的主要目的是:
- 传达分析结果:清晰地展示数据分析的结果和发现。
- 支持决策:为决策者提供必要的信息,以便他们做出基于数据的决策。
- 记录过程:记录数据分析的过程和方法,以便未来参考和复现。
- 促进沟通:在团队和利益相关者之间促进沟通,确保所有人对结果有共同的理解。
5.2. 数据报告的结构
一个标准的数据报告通常包括以下几个部分:
封面
- 标题:报告的标题,简洁明了。
- 作者:报告撰写者的姓名和联系方式。
- 日期:报告的完成日期。
摘要
- 简要概述:对报告的主要内容进行简要概述,包括研究目的、方法、主要发现和结论。
背景介绍
- 研究背景:介绍研究的背景和目的,说明为什么进行这项分析。
- 相关文献:引用相关的文献或先前的研究,以提供上下文。
数据来源
- 数据描述:详细描述所使用的数据集,包括数据的来源、收集方法和数据的特征。
- 数据质量:讨论数据的质量和可靠性,包括任何潜在的偏差或限制。
分析方法
- 方法论:详细描述所采用的数据分析方法和技术,包括统计分析、模型构建和可视化工具。
- 假设:列出在分析过程中所做的假设。
结果展示
- 主要发现:清晰地展示分析结果,使用图表和表格来支持文字描述。
- 数据可视化:使用适当的图表(如条形图、折线图、散点图等)来直观展示数据。
讨论
- 结果解释:对分析结果进行解释,讨论其意义和影响。
- 与预期的比较:将结果与预期的结果进行比较,讨论可能的原因。
结论与建议
- 总结:总结主要发现和结论。
- 建议:基于分析结果提出具体的建议和行动方案。
附录
- 附加信息:提供额外的图表、数据或代码,以便读者深入了解分析过程。
参考文献
- 引用:列出在报告中引用的所有文献和数据源。
5.3. 数据报告的格式
数据报告的格式可以根据受众和目的的不同而有所变化,常见的格式包括:
- 书面报告:适合详细的分析和记录,通常以 PDF 或 Word 文档形式呈现。
- 演示文稿:适合在会议或研讨会上展示,通常使用 PowerPoint 或 Google Slides。
- 交互式仪表板:使用工具(如 Tableau、Power BI)创建交互式报告,允许用户探索数据。
5.4. 数据报告的最佳实践
为了确保数据报告的有效性,以下是一些最佳实践:
- 清晰简洁:确保语言简洁明了,避免使用复杂的术语和行话。
- 结构合理:遵循清晰的结构,使读者能够轻松找到所需的信息。
- 视觉吸引:使用图表和图像增强可读性,避免过多的文字。
- 准确性:确保所有数据和信息的准确性,避免误导读者。
- 反馈与修订:在发布之前,寻求同事或利益相关者的反馈,并根据反馈进行修订。
结论
本次数据分析通过对客户购买行为和满意度的深入研究,揭示了市场趋势和客户需求的关键洞察。分析结果表明,假期期间的销售额显著上升,提示我们在此时加强市场推广的必要性。同时,客户反馈显示出对产品质量的高度满意,但在售后服务方面仍需改进。通过识别高价值客户群体,我们能够制定更具针对性的营销策略,以提升客户忠诚度和复购率。综上所述,建议管理层在未来的战略规划中,重点关注市场推广、售后服务优化和个性化营销,以实现业务的持续增长和客户满意度的提升。这些措施将为公司在竞争激烈的市场环境中保持领先地位提供有力支持。
码文不易,本篇文章就介绍到这里,如果想要学习更多Java系列知识,点击关注博主,博主带你零基础学习Java知识。与此同时,对于日常生活有困扰的朋友,欢迎阅读我的第四栏目:《国学周更—心性养成之路》,学习技术的同时,我们也注重了心性的养成。
相关文章:
数据分析——学习框架
✅作者简介:2022年博客新星 第八。热爱国学的Java后端开发者,修心和技术同步精进。 🍎个人主页:Java Fans的博客 🍊个人信条:不迁怒,不贰过。小知识,大智慧。 💞当前专栏…...
量化交易系统开发-实时行情自动化交易-3.4.2.Okex行情交易数据
19年创业做过一年的量化交易但没有成功,作为交易系统的开发人员积累了一些经验,最近想重新研究交易系统,一边整理一边写出来一些思考供大家参考,也希望跟做量化的朋友有更多的交流和合作。 接下来聊聊基于Okex交易所API获取行情数…...
pytorch实现深度神经网络DNN与卷积神经网络CNN
DNN概述 深度神经网络DNN来自人脑神经元工作的原理,通过在计算机中逻辑抽象出多个节点,接收处理并向后传递信息,实现计算机的自我学习,类比结构见下图: 该方法通过预测输出与实际值的差异不断调整节点参数࿰…...
芯片测试-LDO测试
LDO测试 💢LDO的简介💢💢压降💢💢决定压降的主要因素💢 💢LDO的分类及原理💢💢PMOS LDO💢💢PMOS LDO工作过程💢💢PMOS LDO…...
期权懂|期权新手看过来:看跌期权该如何交易?
期权小懂每日分享期权知识,帮助期权新手及时有效地掌握即市趋势与新资讯! 期权新手看过来:看跌期权该如何交易? 一、可以直接购买看跌期权: (1)选择预期下跌的标的资产。 (2&#…...
《深入浅出HTTPS》读书笔记(8):密码学Hash算法的分类
密码学Hash算法有很多,比如MD5算法、SHA族类算法,MD5早已被证明是不安全的Hash算法了,目前使用最广泛的Hash算法是SHA族类算法。 1)MD5 MD5是一种比较常用的Hash算法,摘要值长度固定是128比特。 MD5算法目前被证明已…...
大语言模型安全,到底是什么的安全
什么是AI安全 自ChatGPT问世以来,市场上涌现出了众多大型语言模型和多样化的AI应用。这些应用和模型在为我们的生活带来便利的同时,也不可避免地面临着安全挑战。AI安全,即人工智能安全,涉及在人工智能系统的开发、部署和使用全过…...
论文2—《基于柔顺控制的智能神经导航手术机器人系统设计》文献阅读分析报告
论文报告:基于卷积神经网络的手术机器人控制系统设计 摘要 本研究针对机器人辅助微创手术中定向障碍和缺乏导航信息的问题,设计了一种智能控制导航手术机器人系统。该系统采用可靠和安全的定位技术、7自由度机械臂以及避免关节角度限制的逆运动学控制策…...
试编写算法将单链表就地逆置(默认是带头节 点,如果是不带头节点地逆置呢?)
编写一个算法来就地逆置一个单链表。默认情况下,链表是带头节点的,但如果链表不带头节点,逆置的过程会有所不同。 第一步:定义逆置函数 根据题目中的“试编写算法将单链表就地逆置”,我们需要: 定义一个…...
FPGA学习笔记#3 Vitis HLS编程规范、数据类型、基本运算
本笔记根据笔者目前的项目确定学习目标,目前主要集中在Vitis HLS上,使用的Vitis HLS版本为2022.2,在windows11下运行,仿真part为xcku15p_CIV-ffva1156-2LV-e,从这一篇开始是HLS的学习进度,主要根据教程&…...
爬虫 - 二手交易电商平台数据采集 (一)
背景: 近期有一个需求需要采集某电商网站平台的商品数据进行分析。因此,我计划先用Python实现一个简单的版本,以快速测试技术的实现可能性,再用PHP实现一个更完整的版本。文章中涉及的技术仅为学习和测试用途,请勿用于商业或非法用…...
“成交量分布指标“,通过筹码精准锁定价格方向+简单找市场支撑压力位 MT4免费公式!
指标名称:成交量分布指标 版本:MT4 ver. 1.32 之前发布的市场分布图不少朋友反馈不错,希望获得其它版本。 这个版本只有MT4的,MT5可以看之前版本,链接: “市场分布图”,精准把握价格动向 更直…...
简记Vue3(四)—— 路由
个人简介 👀个人主页: 前端杂货铺 🙋♂️学习方向: 主攻前端方向,正逐渐往全干发展 📃个人状态: 研发工程师,现效力于中国工业软件事业 🚀人生格言: 积跬步…...
Python批量合并多个PDF
在日常工作中,处理和合并多个 PDF 文件是一个常见需求,尤其是在需要将大量文件整理成一个完整文档时。本文将详细介绍如何使用 Python 的 PyMuPDF 库来实现批量 PDF 文件合并,并提供针对大文件优化的解决方案。 安装 PyMuPDF 要使用 PyMuPD…...
Linux:vim命令总结及环境配置
文章目录 前言一、vim的基本概念二、vim模式命令解析1. 命令模式1)命令模式到其他模式的转换:2)光标定位:3)其他命令: 2. 插入模式3. 底行模式4. 替换模式5. 视图模式6. 外部命令 三、vim环境的配置1. 环境…...
贪心算法day05(k次取反后最大数组和 田径赛马)
目录 1.k次取反后最大化的数组和 2.按身高排序 3.优势洗牌 1.k次取反后最大化的数组和 题目链接:. - 力扣(LeetCode) 思路: 代码: class Solution {public int largestSumAfterKNegations(int[] nums, int k) {//如…...
默认 iOS 设置使已锁定的 iPhone 容易受到攻击
苹果威胁研究的八个要点 苹果手机间谍软件问题日益严重 了解 Apple 苹果的设备和服务器基础模型发布 尽管人们普遍认为锁定的 iPhone 是安全的,但 iOS 中的默认设置可能会让用户面临严重的隐私和安全风险。 安全研究员 Lambros 通过Pen Test Partners透露&#…...
上海市计算机学会竞赛平台2024年11月月赛丙组
题目描述 在一个棋盘上,有两颗棋子,一颗棋子在第 aa 行第 bb 列,另一个颗棋子在第 xx 行第 yy 列。 每一步,可以选择一个棋子沿行方向移动一个单位,或沿列方向移动一个单位,或同时沿行方向及列方向各移动…...
Python批量设置图片背景为透明
我们日常生活中制作PPT等教学资源时,需要批量去除图片背景,就可以使用 Python 的 rembg 库。 这个库基于神经网络模型,去背景效果较好,可以批量处理png, jpg, jpeg等图片。采用以下代码可以批量处理当前目录下的所有图片…...
Vue CLI 脚手架
cli脚手架创建项目步骤 全局安装(一次):yarn global add vue/cli 无法识别yarn的要先安装yarn;终端执行npm install -g yarn 查看Vue版本:vue --version 这里有问题(success上方有warning) 报错:‘vue’不是内部或外部…...
Linux【基础篇】
-- 原生罪 linux的入门安装学习 什么是操作系统? 用户通过操作系统和计算机硬件联系使用。桥梁~ 什么是Linux? 他是一套开放源代码(在互联网上找到Linux系统的源代码,C语言写出的软件),可以自由 传播&…...
多线程环境下安全地使用 SimpleDateFormat的常见方法
文章目录 1. 使用局部变量(每个线程独立一个实例)2. 使用 ThreadLocal<SimpleDateFormat>3. 使用 DateTimeFormatter(Java 8 及以上)4. 使用 DateFormat 子类(如 FastDateFormat)5. 使用 synchronize…...
easyexcel实现自定义的策略类, 最后追加错误提示列, 自适应列宽,自动合并重复单元格, 美化表头
easyexcel实现自定义的策略类, 最后追加错误提示列, 自适应列宽,自动合并重复单元格, 美化表头 原版表头和表体字体美化自动拼接错误提示列自适应宽度自动合并单元格使用Easyexcel使用poi导出 在后台管理开发的工作中,离不开的就是导出excel了. 如果是简单的导出, 直接easyexce…...
ANDROIDWORLD: A Dynamic Benchmarking Environment for Autonomous Agents论文学习
这个任务是基于androidenv的。这个环境之前学过,是一个用来进行强化学习的线上环境。而这篇文章的工作就是要给一些任务加上中间的奖励信号。这种训练环境的优点就是动态,与静态的数据集(比如说我自己的工作)不同,因此…...
Docker 常用命令详解(详细版)
Docker 是一个开源的容器化平台,它使得开发人员可以打包应用程序及其所有依赖项,并在任何环境中运行。Docker 提供了简单而强大的命令行工具来管理容器、镜像、网络等。本文将详细介绍 Docker 的常用命令及其使用方法。 1. 安装 Docker 在使用 Docker …...
【网络安全 | 甲方安全建设】分布式系统、Redis分布式锁及Redisson看门狗机制
未经许可,不得转载。 文章目录 分布式系统分布式系统的核心特性分布式系统的典型架构分布式锁概念Redis 分布式锁原理互斥性锁释放锁的唯一性具体实现Redisson分布式锁分布式系统 分布式系统是一种由多台计算机(节点)组成的系统,这些节点通过网络相互连接并协同工作,共同…...
「QT」几何数据类 之 QLineF 浮点型直线类
✨博客主页何曾参静谧的博客📌文章专栏「QT」QT5程序设计📚全部专栏「VS」Visual Studio「C/C」C/C程序设计「UG/NX」BlockUI集合「Win」Windows程序设计「DSA」数据结构与算法「UG/NX」NX二次开发「QT」QT5程序设计「File」数据文件格式「PK」Parasolid…...
Treeland 技术揭秘,如何使得 DDE 纵享丝滑?
近日,deepin(深度)社区亮相COSCon24 第九届中国开源年会开源市集,且社区资深桌面研发工程师张丁元为大家来了《Treeland,DDE进步的阶梯》技术分享。 就着这个机会,今天就让我们一起来聊聊如何在追求华丽动…...
快速了解SpringBoot 统一功能处理
拦截器 什么是拦截器: 拦截器是Spring框架提供的重要功能之一,主要进行拦截用户请求,在指定方法前后,根据业务需求,执行预先设定的代码。 也就是说,允许开发⼈员提前预定义⼀些逻辑,在⽤⼾的请求响应前后执⾏.也可以…...
C++区分数组的引用和引用的数组
void f(int (&arr)[10]) {//正确} void f1(int &arr[10]) {//不允许使用引用的数组} [](数组下标运算符)的优先级高于&(取地址运算符)。所有表达式&arr[i]等价于&(arr[i]) 引用的数组 一个包含引用的数组&…...
网站在线留言怎么做/百度点击器找名风
使用Q 对象进行复杂的查询 filter() 等方法中的关键字参数查询都是一起进行“AND” 的。 如果你需要执行更复杂的查询(例如OR 语句),你可以使用Q 对象。 Q 对象 (django.db.models.Q) 对象用于封装一组关键字参数。这些关键字参数就是上文“字…...
网站建设项目维护与评价书/资源网站排名优化seo
2019独角兽企业重金招聘Python工程师标准>>> 海尔电商峰值系统架构设计最佳实践 http://kb.cnblogs.com/page/511435/ 转载于:https://my.oschina.net/u/257088/blog/666820...
wordpress插件补丁/网络营销专业就业公司
mybatis级联查询懒加载配置 springboot整合mybatis懒加载 mybatis-plus配置 application.properties #配置mybatis级联查询懒加载 mybatis-plus.configuration.aggressive-lazy-loadingfalse mybatis-plus.configuration.lazy-loading-enabledtruemybaits配置 application…...
网站建设电子商务/推广营销方案
Java中的TCP通信程序TCP可以实现两台计算机之间的数据交互通信的两端,要严格区分客户端与服务端两端通信时的步骤:1.服务端程序,需要事先启动,等待客户端连接2.客户端主动连接服务器端,才能成功通信,服务器…...
岳阳网/培训班线上优化
为什么80%的码农都做不了架构师?>>> 本文来自腾讯资深研发工程师罗成在InfoQ的技术分享。 1、前言 如果:你的 App,在不需要任何修改的情况下就能提升 15% 以上的访问速度,特别是弱网络的时候能够提升 20% 以上的访问速…...
p2p网上贷款网站建设方案.docx/网络推广靠谱吗
EventBus用法及源码解析 目录介绍1.EventBus简介1.1 EventBus的三要素1.2 EventBus的四种ThreadMode(线程模型)1.3 EventBus怎么调用2.EventBus使用2.1 最简单的使用3.EventBus注册源码解析3.1 EventBus.getDefault()获取对象3.2 register(this)注册源码…...