系统认识数据分析
什么是数据分析?
数据分析是指用适当的统计分析方法对收集来的大量数据进行分析,将它们加以汇总和理解并消化,以求最大化地开发数据的功能,发挥数据的作用。数据分析是为了提取有用信息和形成结论而对数据加以详细研究和概括总结的过程。
为什么要进行数据分析?
数据分析在众多领域都具有极其重要的作用。
一、商业决策方面
1. 评估业务绩效
- 通过数据分析可以清晰地了解企业的各项关键指标,如销售额、利润、市场份额等。例如,一家零售企业可以分析每月的销售数据,对比不同店铺、不同产品品类的销售业绩。如果发现某家店铺的销售额连续几个月低于平均水平,就可以进一步挖掘是因为店铺位置不佳、员工服务不好,还是产品种类不符合当地顾客需求等原因导致的。
2. 发现市场机会
- 数据分析有助于企业洞察市场趋势和消费者需求。以智能手机行业为例,通过收集和分析消费者对手机功能的偏好数据(如对拍照质量、电池续航、处理器性能等方面的关注度),手机厂商可以发现潜在的市场空白。如果数据分析显示消费者对长续航手机的需求在增加,而市场上此类产品供应不足,厂商就可以抓住这个机会,研发和推广具有长续航功能的手机。
3.优化资源配置
- 企业资源包括人力、物力和财力等多个方面。借助数据分析,企业能够更合理地分配这些资源。例如,在生产制造中,通过分析生产流程各环节的数据,如生产时间、次品率等,企业可以确定哪些环节需要更多的人力投入以提高效率,或者哪些设备需要更新以降低次品率。对于资金的分配,企业可以根据不同项目的预期收益和风险评估数据,将资金投入到回报率更高的项目中。
二、产品研发方面
-
1.了解用户需求
- 产品研发的目的是满足用户需求,数据分析是获取用户需求的有效手段。软件公司在开发一款新的移动应用时,可以通过用户行为数据分析,如用户在应用内的操作路径、停留时间最长的功能模块等,来了解用户对产品功能的使用习惯和期望。如果发现用户很少使用某个功能,而频繁使用另一个功能,就可以在后续版本中优化或强化受欢迎的功能,甚至考虑删除不受欢迎的功能。
- 2.提升产品质量
- 数据分析能够帮助企业识别产品中的问题。以汽车制造为例,通过分析汽车召回数据、用户投诉数据以及车辆在使用过程中的故障数据,汽车制造商可以找出产品质量的薄弱环节。如果大量数据显示某款车型的发动机故障频发,制造商就可以深入调查原因,可能是设计缺陷、零部件质量问题或者生产工艺问题等,从而采取相应的改进措施,如优化发动机设计、更换供应商或者改进生产流程。
三、 市场营销方面
-
精准营销
- 数据分析使企业能够对客户进行细分,针对不同的客户群体制定个性化的营销方案。例如,电商平台可以根据用户的购买历史、浏览行为、收藏夹内容等数据,将用户分为不同的类别,如 “时尚爱好者”“数码达人”“家居生活追求者” 等。对于 “时尚爱好者” 群体,可以推送最新的服装、饰品等产品信息;对于 “数码达人”,则重点推荐电子产品的促销活动。这样可以提高营销活动的针对性和效果,增加客户的购买转化率。
-
营销渠道评估
- 企业通过多种渠道进行营销,如社交媒体、电子邮件、线下活动等。数据分析可以帮助企业评估每个营销渠道的有效性。例如,通过分析不同渠道带来的流量、转化率、客户留存率等数据,企业可以确定在哪些渠道上投入更多资源。如果数据显示通过社交媒体广告带来的新客户数量和购买转化率都很高,而电子邮件营销的效果不佳,企业就可以考虑调整资源分配,增加社交媒体广告的投入,同时优化电子邮件营销的策略。
-
四、风险管理方面
-
识别风险因素
- 在金融领域,数据分析对于风险识别至关重要。银行可以通过分析客户的信用数据,包括还款记录、债务水平、收入稳定性等,来评估客户的信用风险。如果一个客户有多次逾期还款记录,且债务负担较重,收入又不稳定,那么银行就可以识别出这个客户的贷款违约风险较高。对于企业经营风险,通过分析市场数据、行业竞争态势、原材料价格波动等因素,企业可以提前识别可能面临的风险,如市场需求下降、竞争对手推出更有竞争力的产品、原材料成本上升等。
-
风险预警和控制
- 当风险因素被识别后,数据分析可以用于建立风险预警系统。例如,在供应链管理中,通过实时监测供应商的交货时间、产品质量数据等,企业可以设置预警阈值。如果供应商的交货时间延迟超过一定天数或者产品次品率上升到一定比例,系统就会发出预警,企业可以及时采取措施,如寻找替代供应商或者与现有供应商协商改进,以降低供应链中断的风险。
数据分析如何实现?
一、明确问题
确定业务目标
与相关人员(如业务部门、管理层)沟通,了解他们希望通过数据分析解决的业务问题或达到的目标。例如,企业想要提高产品销售额,可能的问题是 “哪些产品的销售潜力尚未充分挖掘?” 或者 “不同地区的销售差异是由什么因素导致的?”。
将业务问题转化为数据分析问题
把业务问题细化为可以通过数据来回答的具体问题。对于 “哪些产品的销售潜力尚未充分挖掘?” 可以转化为 “各产品的销售增长率是多少?”“各产品的市场占有率与其潜在市场规模的对比如何?” 等数据分析问题。
二、数据收集
确定数据来源
内部数据:包括企业自身的业务系统,如客户关系管理系统(CRM)中的客户信息、销售记录;企业资源规划系统(ERP)中的库存数据、生产数据等。例如,从电商企业的销售数据库中获取产品销售日期、数量、价格等信息。
外部数据:可以是行业报告、市场调研机构的数据、政府统计数据等。比如,获取行业协会发布的市场规模和增长率数据,或者从专业调研公司购买消费者偏好调查报告。
选择收集方法
对于数据库中的数据,可以使用 SQL(结构化查询语言)等工具进行提取。例如,通过编写 SQL 查询语句从企业的销售数据库中获取特定时间段内的销售数据。
如果是网页数据,可能需要使用网络爬虫技术(在遵守法律法规和网站使用条款的前提下)。比如,爬取竞争对手网站上的产品价格和促销信息。
对于调查问卷数据,需要设计合理的问卷,通过线上或线下的方式进行发放和回收。
三、数据清理
处理缺失值
识别数据集中的缺失值。可以通过统计方法,如计算每个变量的缺失值比例来确定。例如,发现客户年龄字段有 10% 的缺失值。
对于缺失值,可以采用删除含有缺失值的记录(当缺失值比例较小且数据量足够大时)、填充均值 / 中位数 / 众数(对于数值型 / 类别型数据)等方法。比如,对于缺失的客户年龄,可以用年龄的平均值来填充。
处理异常值
通过可视化(如箱线图)或统计方法(如计算标准差倍数)来识别异常值。例如,在销售数据中,某个产品的销售额远高于其他产品,可能是异常值。
对于异常值,可以进行修正(如果是数据录入错误)、删除(如果确定是异常情况且会影响分析结果)或者作为特殊情况单独分析。比如,发现某一天的销售数据因为系统故障出现异常高值,经核实后可以删除该数据点。
数据格式统一
确保数据的类型(如数值型、字符型、日期型等)符合分析要求。例如,将日期数据从文本格式转换为日期格式,以便进行时间序列分析。
统一数据的编码和单位。如将所有产品价格统一为人民币单位,并且对于产品类别采用统一的编码标准。
四、数据分析方法选择与应用
描述性分析
计算基本统计量,如均值、中位数、标准差、众数等,用于描述数据的集中趋势和离散程度。例如,计算产品的平均销售价格、销售数量的标准差等,以了解产品销售的基本情况。
制作频数分布表和图表(如柱状图、饼图、直方图等)。比如,用柱状图展示不同产品的销售数量分布,用饼图展示各产品类别占总销售额的比例。
相关性分析
计算变量之间的相关系数(如 Pearson 相关系数、Spearman 秩相关系数),以确定变量之间的线性或非线性关系。例如,分析产品价格和销售数量之间的相关性,判断价格是否对销量有显著影响。
可以通过散点图等可视化方式直观地展示变量之间的关系。比如,绘制产品价格和销售数量的散点图,观察数据点的分布趋势。
预测分析(如果适用)
回归分析:如果存在因果关系,可建立回归模型(如线性回归、逻辑回归等)进行预测。例如,建立产品销售数量与价格、促销活动、季节等因素的线性回归模型,预测未来销售情况。
时间序列分析:对于具有时间序列的数据(如销售数据按日期记录),可以使用 ARIMA 模型等方法进行预测。比如,根据过去几年的每月销售数据,使用 ARIMA 模型预测未来几个月的销售额。
五、数据可视化与结果解读
选择合适的可视化工具和图表类型
根据数据特点和分析目的选择可视化工具,如 Python 中的 Matplotlib、Seaborn 库,或者商业智能工具(Tableau、PowerBI 等)。
对于比较数据大小,可使用柱状图;展示数据占比用饼图或堆积柱状图;体现数据变化趋势用折线图等。例如,用折线图展示产品销售随时间的变化趋势,用堆积柱状图展示不同地区各产品的销售占比。
解读分析结果
将数据分析结果与业务问题相结合,提供有针对性的见解。例如,通过分析发现某产品在某个地区的销售增长缓慢,结合市场调研数据解读可能是因为当地竞争对手推出了类似产品且价格更有优势。
提出建议和决策依据。比如,基于分析结果建议企业在该地区降低产品价格或者加大促销力度,以提高产品竞争力。
六、数据报告与沟通
撰写数据报告
报告应包括分析背景、目的、方法、结果和结论等部分。例如,在报告开头说明是为了提高产品销售而进行分析,接着介绍数据来源和分析方法(如采用了相关性分析和回归分析),然后呈现分析结果(如变量之间的相关性系数和回归模型的参数),最后得出结论并提出建议。
与相关人员沟通
向业务部门、管理层等相关人员汇报数据分析结果。通过会议、演示文稿等形式,确保他们理解分析结果,并能够根据建议做出决策。例如,在业务会议上向销售团队和管理层展示数据分析报告,共同讨论产品销售策略的调整。
有哪些分析框架和方法?
PEST 分析框架
含义:PEST 分析用于对宏观环境进行分析,它是一种战略分析工具,包括政治(Political)、经济(Economic)、社会(Social)和技术(Technological)四个方面。
应用场景:企业在进入新市场、开发新产品或者制定长期战略规划时使用。例如,一家跨国企业计划在某个国家开拓市场,通过 PEST 分析可以了解该国的政治稳定性、经济发展水平、社会文化特点以及技术基础设施等因素对业务的潜在影响。
方法示例:
政治因素:考虑政府的政策法规,如税收政策、贸易壁垒、行业监管力度等。如果一个国家对某行业的监管非常严格,企业可能需要投入更多的资源来确保合规。
经济因素:分析宏观经济指标,像 GDP 增长率、通货膨胀率、汇率波动等。例如,在经济增长缓慢的地区,消费者的购买力可能较低,企业可能需要调整产品定价策略。
社会因素:关注社会文化趋势、人口结构变化、消费习惯等。比如,随着老龄化社会的到来,与老年人健康护理相关的产品和服务市场可能会扩大。
技术因素:研究技术创新、技术普及率、互联网基础设施等。例如,在 5G 技术普及的地区,企业可以考虑开发更依赖高速网络的产品或服务,如高清视频流媒体应用。
SWOT 分析框架
含义:SWOT 分析是一种基于企业内部资源和外部环境的综合分析方法,用于评估企业的优势(Strengths)、劣势(Weaknesses)、机会(Opportunities)和威胁(Threats)。
应用场景:在企业战略规划、竞争对手分析、业务单元评估等场景中广泛应用。例如,企业在考虑推出新产品线或者进入新的业务领域时,通过 SWOT 分析可以全面了解自身的优势和劣势,以及外部环境中的机会和威胁。
方法示例:
优势:可以是企业的核心技术、强大的品牌形象、高效的供应链等。例如,一家科技公司拥有自主研发的专利技术,这使其在产品性能方面具有竞争优势。
劣势:包括企业内部的资源不足、管理效率低下、产品质量问题等。比如,一家制造企业的生产设备陈旧,导致产品次品率较高,这就是它的劣势。
机会:来自外部环境,如新兴市场的出现、新技术的应用、政策利好等。例如,政府出台了对新能源汽车产业的补贴政策,这对于新能源汽车制造商来说是一个发展机会。
威胁:也是外部因素,如激烈的市场竞争、原材料价格上涨、消费者需求变化等。比如,竞争对手推出了更具性价比的产品,对企业的市场份额构成威胁。
波特五力模型
含义:波特五力模型是用于分析行业竞争态势的工具,这五种力量包括现有竞争者的威胁、潜在进入者的威胁、替代品的威胁、供应商的议价能力和购买者的议价能力。
应用场景:主要用于企业进行行业分析、竞争战略制定。例如,在传统零售行业,通过波特五力模型可以分析电商平台等新兴渠道对传统零售商(现有竞争者)的冲击,以及供应商(如品牌商)在产品供应价格和条款上的议价能力。
方法示例:
现有竞争者的威胁:考虑行业内竞争者的数量、行业增长速度、产品差异化程度等。在智能手机市场,由于有众多品牌竞争,且产品同质化程度较高,现有竞争者之间的竞争非常激烈。
潜在进入者的威胁:分析行业进入壁垒,如资金要求、技术门槛、品牌认知度等。例如,高端芯片制造行业需要巨额的资金投入和先进的技术,这对潜在进入者构成了较高的壁垒。
替代品的威胁:研究可替代产品或服务的存在和其性能价格比。比如,线上会议软件的发展对传统展会行业构成了替代品的威胁。
供应商的议价能力:取决于供应商的集中程度、产品的独特性等因素。如果一家企业所需的关键原材料只有少数几家供应商提供,那么供应商的议价能力就较强。
购买者的议价能力:受购买者的集中程度、产品对购买者的重要性等因素影响。例如,大型连锁超市由于采购量大,对供应商的议价能力较强。
波士顿矩阵(BCG Matrix)
含义:波士顿矩阵是一种用于对企业产品组合进行分析的工具,它以市场增长率和相对市场占有率为两个维度,将产品分为明星产品(高增长、高份额)、现金牛产品(低增长、高份额)、问题产品(高增长、低份额)和瘦狗产品(低增长、低份额)。
应用场景:在企业进行产品战略规划、资源分配决策时使用。例如,企业可以根据波士顿矩阵的分析结果,决定对不同产品的投入程度,是加大投资培育明星产品,还是从瘦狗产品中退出资源。
方法示例:
明星产品:市场增长率高且相对市场占有率高的产品。如某互联网公司推出的一款新的短视频社交应用,在年轻人群体中迅速流行,市场增长率高,并且已经占据了一定的市场份额,属于明星产品,企业应该加大投资以保持其增长势头。
现金牛产品:市场增长率较低但相对市场占有率高的产品。例如,一家饮料企业的经典款饮料,市场已经相对成熟,增长缓慢,但凭借品牌优势和庞大的用户基础,市场占有率很高,这类产品可以为企业提供稳定的现金流。
问题产品:市场增长率高但相对市场占有率低的产品。比如,一家科技公司新推出的一种虚拟现实设备,处于新兴的市场领域,市场增长迅速,但目前该公司的产品市场份额较低,需要企业投入大量资源来提高市场份额,否则可能会逐渐被市场淘汰。
瘦狗产品:市场增长率和相对市场占有率都较低的产品。例如,某传统相机制造商的一款胶卷相机产品,随着数码相机和智能手机相机的普及,其市场增长率和占有率都很低,企业可以考虑逐步淘汰这类产品。
数据分析方法 - 描述性统计分析
含义:描述性统计分析用于对数据的集中趋势、离散程度和分布形状等进行描述,包括计算均值、中位数、众数、标准差、方差、偏度、峰度等统计量,以及绘制直方图、箱线图等图表。
应用场景:在数据分析的初期阶段广泛使用,用于快速了解数据的基本特征。例如,在分析销售数据时,通过计算销售金额的均值和标准差,可以了解销售业绩的平均水平和波动情况;通过绘制直方图可以直观地看到销售金额的分布情况。
方法示例:
集中趋势指标:
均值:将所有数据相加后除以数据个数,适用于数据分布比较均匀的情况。例如,计算一个班级学生的平均成绩。
中位数:将数据按照大小顺序排列后,位于中间位置的数值,不受极端值的影响。比如,在分析员工工资数据时,中位数可以更好地反映工资的中间水平。
众数:数据集中出现次数最多的数值,用于描述数据的最常见情况。例如,在统计服装尺码的销售数据时,众数可以帮助确定最畅销的尺码。
离散程度指标:
标准差:衡量数据相对于均值的离散程度,标准差越大,数据越分散。例如,比较不同产品销售数量的标准差,可以了解哪种产品的销售情况更不稳定。
方差:标准差的平方,同样用于衡量数据的离散程度。
分布形状指标:
偏度:描述数据分布的不对称程度,正偏态表示右侧(较大值方向)有长尾,负偏态表示左侧有长尾。例如,在分析收入数据时,可能会出现正偏态,因为少数高收入者会使分布向右偏。
峰度:衡量数据分布的尖峰或扁平程度,超高峰度表示数据更集中在均值附近,低峰度表示数据分布更扁平。
数据分析方法 - 相关性分析
含义:相关性分析用于研究两个或多个变量之间的线性关系强度和方向,常用的方法是计算相关系数,如 Pearson 相关系数(用于衡量线性相关关系)、Spearman 秩相关系数(可用于非正态分布数据或存在非线性关系的数据)。
应用场景:在探索变量之间的关系、预测模型构建等场景中使用。例如,在市场调研中,分析消费者年龄与购买金额之间的相关性,以了解不同年龄段消费者的消费能力;在金融领域,分析股票价格与宏观经济指标之间的相关性,辅助投资决策。
方法示例:
Pearson 相关系数:取值范围在 - 1 到 1 之间,-1 表示完全负相关,1 表示完全正相关,0 表示无相关。例如,通过计算广告投入与产品销售额之间的 Pearson 相关系数,如果系数接近 1,说明广告投入与销售额之间存在很强的正相关关系,即广告投入增加,销售额也很可能增加。
Spearman 秩相关系数:同样取值范围在 - 1 到 1 之间,通过对变量的秩次(排序后的位置)进行计算。适用于不满足正态分布假设的变量或者存在非线性关系的变量。比如,分析学生的考试成绩排名与平时作业完成情况排名之间的 Spearman 秩相关系数,以了解两者之间的关联程度。
数据分析方法 - 回归分析
含义:回归分析是一种用于研究变量之间因果关系的统计方法,通过建立回归方程来描述因变量与一个或多个自变量之间的关系。包括线性回归(适用于因变量和自变量之间是线性关系的情况)、逻辑回归(用于因变量是分类变量的情况)等多种类型。
应用场景:在预测分析、因果关系验证等方面应用广泛。例如,在房地产市场,通过建立房屋价格与房屋面积、房龄、周边配套设施等自变量的线性回归模型,预测房屋价格;在医学研究中,使用逻辑回归分析患者的某些特征(如年龄、性别、症状等)与疾病发生概率之间的关系。
方法示例:
线性回归:假设因变量 与自变量 之间存在线性关系 ,其中 是截距, 是回归系数, 是误差项。通过最小二乘法等方法估计回归系数,使预测值与实际值之间的误差平方和最小。例如,收集了一组学生的学习时间和考试成绩数据,建立线性回归模型来预测学习时间与考试成绩之间的关系。
逻辑回归:用于二分类问题(如事件是否发生、客户是否购买等)。假设因变量 服从伯努利分布,逻辑回归模型为 ,其中 是在给定自变量 的情况下事件发生()的概率。例如,在市场营销中,通过逻辑回归分析消费者的特征(如年龄、收入、消费习惯等)对购买产品概率的影响。
数据分析方法 - 聚类分析
含义:聚类分析是一种无监督学习方法,它根据数据对象之间的相似性将数据划分为不同的类别(簇),使得同一簇内的数据对象具有较高的相似性,而不同簇之间的数据对象具有较低的相似性。常用的聚类算法包括 K - Means 聚类、层次聚类等。
应用场景:在客户细分、市场细分、图像识别等领域有广泛应用。例如,在电商行业,通过聚类分析将客户按照购买行为、消费金额、购买频率等特征划分为不同的客户群体,以便企业针对不同群体制定个性化的营销策略;在图像识别中,根据图像的颜色、纹理等特征进行聚类,实现图像分类。
方法示例:
K - Means 聚类:首先确定要划分的簇的数量 ,然后随机选择 个初始中心点,计算每个数据点到这些中心点的距离,将数据点分配到距离最近的中心点所在的簇中,接着重新计算每个簇的中心点,重复上述过程直到簇的中心点不再发生明显变化。例如,在对用户消费数据进行 K - Means 聚类时,设定 ,经过多次迭代后将用户分为高消费、中消费和低消费三个群体。
层次聚类:有凝聚式和分裂式两种方式。凝聚式层次聚类从每个数据点作为一个单独的簇开始,逐步合并相似的簇;分裂式层次聚类则从所有数据点都在一个簇开始,逐步分裂出不同的簇。例如,在对文本数据进行层次聚类时,根据文本的主题相似性,通过凝聚式层次聚类逐步将相似主题的文本合并为一个簇,最终形成不同主题的文本簇。
数据分析方法 - 因子分析
含义:因子分析是一种数据降维方法,它试图从众多变量中提取出少数几个公共因子,这些公共因子能够解释原始变量的大部分方差。通过因子分析,可以简化数据结构,发现变量之间潜在的结构关系。
应用场景:在社会科学、心理学、市场调研等领域应用较多。例如,在心理学研究中,通过对大量心理测试题目的因子分析,提取出几个主要的心理因子,如情绪稳定性、外向性等,来解释个体的心理特征;在市场调研中,对消费者对产品多个属性的评价进行因子分析,找出影响消费者评价的主要因素,如产品功能、品牌形象等。
方法示例:
假设我们有一组关于消费者对智能手机评价的数据,包括屏幕尺寸、屏幕分辨率、处理器性能、电池续航、相机像素等多个变量。通过因子分析,可能提取出两个公共因子,一个与手机性能(包括处理器性能、电池续航等)有关,另一个与手机显示(包括屏幕尺寸、屏幕分辨率等)有关。这些公共因子可以帮助企业更好地理解消费者对手机的需求结构,以便在产品设计和营销中重点关注这些关键因素。
数据分析方法 - 时间序列分析
含义:时间序列分析是对按时间顺序排列的数据进行分析的方法,主要目的是揭示数据随时间的变化规律,包括长期趋势、季节性波动、周期性波动和不规则波动,并进行预测。常用的方法包括移动平均法、指数平滑法、ARIMA 模型(自回归积分滑动平均模型)等。
应用场景:在经济预测、销售预测、库存管理等领域广泛应用。例如,在电力需求预测中,通过分析历史电力消耗数据的时间序列,预测未来一段时间的电力需求,以便合理安排发电计划;在零售行业,利用时间序列分析销售数据,提前准备库存,满足季节性或周期性的销售高峰。
方法示例:
移动平均法:计算一定时间窗口内数据的平均值作为预测值。例如,对于一个月的日销售数据,采用 3 日移动平均法,就是将相邻 3 天的销售数据求平均作为第 3 天的预测值,以此类推。这种方法可以平滑数据,去除短期波动。
指数平滑法:根据历史数据的重要性赋予不同的权重,越近期的数据权重越大。例如,在预测产品销量时,通过调整平滑系数,使预测更侧重于近期的销售趋势,从而更准确地预测下一期的销量。
ARIMA 模型:对于非平稳时间序列,先通过差分等方法将其转化为平稳序列,然后建立自回归(AR)、移动平均(MA)和差分(I)相结合的模型。例如,对于具有季节性和趋势性的旅游人数时间序列数据,通过构建合适的 ARIMA 模型来预测未来旅游人数,为旅游资源的规划和管理提供依据。
如何基于数据创造价值?
优化业务流程
效率提升:
通过数据分析找出业务流程中的瓶颈环节。例如,在生产制造过程中,分析生产线上每个环节的耗时数据,发现某个机器设备的加工时间过长是导致整体生产效率低下的关键因素。
利用数据驱动的决策来重新设计流程。比如,根据数据分析结果,调整设备的工作参数或者增加额外的设备来缩短该环节的加工时间,从而提高整个生产线的效率。
成本控制:
分析成本数据,包括原材料采购成本、人力成本、运输成本等各个环节的费用。例如,分析不同供应商提供的原材料价格、质量和交货期数据,找到性价比最高的供应商。
基于数据进行精准的成本预算和成本削减策略。比如,通过对销售数据和库存数据的分析,合理安排库存水平,减少库存积压,降低库存成本。
精准营销与客户关系管理
客户细分:
收集客户的基本信息、购买行为、偏好等多维度数据。例如,电商平台收集客户的年龄、性别、购买的商品类别、购买频率、浏览历史等数据。
运用数据分析方法(如聚类分析)将客户划分为不同的群体。比如,将客户分为高价值客户、高忠诚度客户、价格敏感型客户等不同类别。
个性化营销:
根据不同客户群体的特点制定个性化的营销活动。对于高价值客户,可以提供专属的高端产品推荐和优质的服务体验;对于价格敏感型客户,推送促销活动和性价比高的产品。
通过客户反馈数据和营销活动的响应数据不断优化营销策略。例如,分析客户对营销邮件的打开率、点击率和购买转化率,调整邮件的内容、发送时间和频率,以提高营销效果。
客户留存与忠诚度提升:
监测客户的满意度和忠诚度指标,如净推荐值(NPS)、客户流失率等。例如,通过定期的客户满意度调查收集数据,了解客户对产品和服务的满意程度。
利用数据发现客户流失的预警信号,并采取措施进行客户挽回。比如,分析客户购买行为的变化,当发现长期购买的客户突然停止购买或者购买频率大幅下降时,及时通过个性化的优惠或沟通来挽留客户。
产品创新与改进
需求发现:
分析市场调研数据、客户反馈数据(包括投诉、建议等)和行业趋势数据,挖掘客户尚未满足的需求。例如,通过社交媒体监测和文本分析,收集消费者对产品的期望和痛点。
观察竞争对手的产品特点和市场反应数据,寻找产品差异化的机会。比如,分析竞争对手产品的评价数据,发现其在某些功能上的不足,作为自身产品创新的方向。
产品优化:
收集产品使用数据,如产品性能指标、用户操作行为等。例如,对于软件产品,分析用户在不同功能模块的使用频率和停留时间,了解用户的使用习惯。
根据数据驱动的见解对产品进行改进。比如,根据用户对软件功能的使用情况,优化用户界面设计,或者增强用户频繁使用的功能,以提高产品的用户体验。
新产品开发:
基于市场需求和技术可行性分析的数据,确定新产品的开发方向。例如,在智能家居领域,分析消费者对智能设备的需求趋势和技术发展数据,决定开发具有特定功能的新型智能设备。
在新产品开发过程中,利用数据进行市场测试和用户验证。比如,通过小规模的产品试用活动,收集用户的反馈数据,对新产品进行改进和优化,提高新产品的成功率。
战略决策支持
市场趋势预测:
收集宏观经济数据、行业数据、竞争对手数据等,分析市场的规模、增长速度、结构变化等趋势。例如,分析智能手机行业的数据,包括市场份额的变化、新技术的应用情况等,预测未来市场的发展方向。
利用时间序列分析、回归分析等方法建立预测模型。比如,通过建立回归模型,分析影响智能手机销量的因素(如价格、功能、品牌等)与销量之间的关系,预测未来的销量变化,为企业的战略决策提供依据。
风险评估与应对:
分析企业内部和外部的风险因素数据,如财务风险(债务水平、现金流等)、市场风险(市场波动、竞争对手动态等)、技术风险(技术更新换代、技术依赖等)。例如,分析企业的财务报表数据和行业市场波动数据,评估企业面临的财务风险和市场风险。
根据风险评估结果制定风险应对策略。比如,当发现市场风险较高时,企业可以采取多元化经营、加强市场调研等策略来降低风险。
资源分配优化:
分析企业各个业务部门或项目的绩效数据、潜力数据等。例如,分析不同产品生产线的成本、收益、市场前景等数据。
根据数据分析结果合理分配企业的人力、物力和财力资源。比如,对于有高增长潜力的业务部门或项目,增加资金投入和人力资源配置,以实现企业资源的最优利用,提升企业的整体竞争力。
如何基于数据训练算法?
一、明确算法目标和数据需求
确定目标:
明确你希望算法实现的目标。例如,如果你正在处理一个分类问题,目标可能是将客户分为不同的类别(如高价值客户和低价值客户);对于回归问题,可能是预测房屋价格或股票价格;对于图像识别问题,目标是识别图像中的物体或场景。
明确性能指标,如分类问题中常用的准确率、召回率、F1 值,回归问题中的均方误差(MSE)、平均绝对误差(MAE)等。这些指标将用于评估算法训练后的性能。
数据需求分析:
确定所需的数据类型。例如,对于文本分类任务,你可能需要文本数据及相应的类别标签;对于图像识别,需要图像数据集和图像对应的类别标签;对于预测任务,可能需要时间序列数据或特征与目标变量的对应数据。
考虑数据的规模,不同算法对数据量的要求不同,一些深度学习算法可能需要大量的数据才能表现良好,而简单的线性回归可能在少量数据上也能进行训练。
二、数据收集与预处理
数据收集:
从内部数据库、文件系统、外部数据源(如公共数据集、API 等)获取数据。例如,从企业的 CRM 系统中收集客户信息,从在线存储库(如 UCI 机器学习库)下载公开数据集,或使用网络爬虫(遵守法律和道德规范)从网页收集数据。
对于一些问题,可能需要人工标注数据,如在图像标注任务中,需要人工为图像添加正确的类别标签。
数据预处理:
数据清洗:
处理缺失值,可使用删除含缺失值的记录、填充均值 / 中位数 / 众数(对于数值数据)或最常见类别(对于分类数据)等方法。例如,在一个销售数据集里,如果产品价格存在缺失值,可以用该产品价格的平均值填充。
处理异常值,可通过统计方法(如使用 Z 分数或 IQR 法)或可视化方法(如箱线图)识别异常值,然后根据情况删除、修改或单独处理。例如,在员工工资数据中,对于异常高的工资,如果确定是错误数据,可以删除或修正。
数据转换:
对数值数据,可进行标准化(如 Z 分数标准化:)或归一化(将数据缩放到 0 到 1 范围)。这有助于提高许多算法的性能和收敛速度。例如,在房价预测中,将房屋面积、房间数量等特征进行标准化处理。
对于分类数据,使用独热编码(One-Hot Encoding)将类别变量转换为多个二进制变量。例如,将产品类别 “手机”“电脑”“平板” 分别转换为 [1,0,0]、[0,1,0]、[0,0,1] 的向量形式。
对于文本数据,可能需要进行词法分析(如分词、词干提取、词形还原)、去除停用词,然后将文本转换为词向量(如使用 TF-IDF 或词嵌入方法如 Word2Vec、GloVe)。
三、选择合适的算法
监督学习算法:
分类算法:
决策树:适用于特征解释性强、数据分布不规则的情况。例如,在判断贷款违约风险时,根据用户的收入、信用历史、债务水平等特征构建决策树。
朴素贝叶斯:适用于文本分类,如邮件分类(垃圾邮件和正常邮件),基于贝叶斯定理和特征条件独立性假设。
支持向量机(SVM):在高维空间中寻找最优分类超平面,适用于小样本、非线性分类,如手写数字识别。
神经网络:在图像识别、语音识别等复杂分类任务中表现出色,如使用卷积神经网络(CNN)进行图像分类,使用循环神经网络(RNN)或其变体(LSTM、GRU)进行自然语言处理。
回归算法:
线性回归:适用于线性关系的数据,如预测房屋价格与房屋面积、房龄等因素的关系。
多项式回归:当数据呈多项式关系时使用,如抛物线或更高次曲线拟合。
岭回归和 Lasso 回归:处理线性回归中的多重共线性问题,通过添加正则化项来防止过拟合。
无监督学习算法:
聚类算法:
K-Means:根据数据点到聚类中心的距离将数据分为 个簇,适用于客户细分、图像压缩等。例如,将客户按购买行为聚类。
层次聚类:可以得到聚类的层次结构,适用于探索性数据分析。
降维算法:
主成分分析(PCA):将高维数据投影到低维空间,保留主要信息,常用于数据可视化和特征提取。例如,将高维的图像特征降维后可视化。
因子分析:从多个变量中提取公共因子,解释变量间的关系,如在心理测量学中从大量测试问题中提取几个主要心理因素。
四、划分数据集
训练集、验证集和测试集的划分:
通常将数据划分为训练集、验证集和测试集,比例可为 70:15:15 或 80:10:10 等。例如,有 1000 个数据样本,可将 700 个作为训练集,150 个作为验证集,150 个作为测试集。
训练集用于训练算法,验证集用于调整算法的超参数(如决策树的深度、神经网络的学习率等),测试集用于评估最终训练好的模型的性能,保证模型对新数据的泛化能力。
五、训练算法
使用训练集训练算法:
对于不同算法,使用相应的训练方法:
决策树:通过递归地选择最优特征进行节点分裂,根据信息增益、基尼不纯度等标准构建决策树。例如,在分类任务中,根据训练数据的特征和类别信息逐步构建决策树。
神经网络:使用反向传播算法和优化器(如随机梯度下降及其变体如 Adam)调整网络的权重,使损失函数最小化。例如,在图像分类任务中,根据图像数据和类别标签,不断更新神经网络的权重以最小化交叉熵损失。
K-Means 聚类:随机初始化聚类中心,根据数据点到中心的距离分配簇,更新中心,重复该过程直到收敛。
六、超参数调整
确定超参数范围:
对于不同算法,有不同的超参数需要调整。例如,决策树的最大深度、最小叶子节点数;神经网络的层数、每层的神经元数量、学习率、批大小等。
可以使用网格搜索、随机搜索或更高级的方法(如贝叶斯优化)来寻找最优超参数。例如,使用网格搜索在决策树的不同最大深度和最小叶子节点数组合中寻找最佳组合,以优化分类性能。
使用验证集调整超参数:
利用验证集评估不同超参数组合下的模型性能,根据设定的性能指标选择最优超参数。例如,在不同的学习率和批大小组合下训练神经网络,使用验证集的准确率或损失值来确定最佳组合。
七、模型评估与改进
使用测试集评估模型:
将训练好的模型应用于测试集,计算性能指标。例如,对于分类任务,计算测试集上的准确率、召回率、F1 值;对于回归任务,计算均方误差、平均绝对误差等。
评估模型是否过拟合或欠拟合。过拟合表现为训练集性能好但测试集性能差,欠拟合表现为训练集和测试集性能都不好。
模型改进:
对于过拟合,可以增加数据、添加正则化项(如 L1、L2 正则化)、使用更简单的模型或提前停止训练。例如,在神经网络中添加 L2 正则化项防止过拟合。
对于欠拟合,可以使用更复杂的模型、增加特征或调整算法的超参数。
八、部署与持续优化
部署模型:
将训练好的模型部署到实际应用环境中,如将预测模型部署到服务器,为在线预测服务提供支持;将分类模型集成到移动应用中进行实时分类。
持续优化:
持续收集新数据并更新模型,以适应新的情况。例如,定期更新客户分类模型,以反映客户行为和市场的变化。
监控模型性能,当性能下降时重新训练或调整模型。例如,监测预测模型的误差,如果误差超过一定阈值,重新训练模型。
相关文章:
系统认识数据分析
什么是数据分析? 数据分析是指用适当的统计分析方法对收集来的大量数据进行分析,将它们加以汇总和理解并消化,以求最大化地开发数据的功能,发挥数据的作用。数据分析是为了提取有用信息和形成结论而对数据加以详细研究和概括总结的…...
Cherno C++学习笔记 P52 处理多返回值
在这篇文章当中,我们解决一下如何用C的函数处理多返回值的问题。 在有些情况下,我们希望我们的函数可以返回多个返回值,比如返回两个string或者是一个int加上一个string。如果我们用的是python之类的语言的话,那这个事情其实是很…...
Android车机DIY开发之学习篇(一)编译UBOOT以正点原子为例
Android车机DIY开发之学习篇(一)编译UBOOT以正点原子为例 1.代码在u-boot文件夹下 2.在 U-Boot 源码目录下执行如下命令编译 U-Boot: ./make.sh rk3588生成两个文件 ### uboot.img 对应<SDK>/uboot/uboot.img ### rk3588_spl_loader_v1.13.113.bin 对应<…...
扩散模型、原型网络以及肿瘤微环境解析等名词出现在基金立项名单中,它们各自的应用现状如何?|文献速递·25-01-10
小罗碎碎念 昨晚看到了云南省2025年自然科学基金立项的名单,今天把医工交叉的项目挑出来和大家分享一下。 今天分享的文献,灵感来源于2025年的基金,我会先简单分析一下基金的情况,然后再和大家分享三篇与立项基金相关的文献。 总共…...
【Java设计模式-4】策略模式,消灭if/else迷宫的利器
各位Java编程小伙伴们!今天咱们要一起探索一个超级厉害的Java设计模式——策略模式,它就像是一把神奇的魔法剑,专门用来斩断那些让我们代码变得乱糟糟的if/else语句迷宫! 一、if/else的烦恼 在编程的奇妙世界里,我们…...
10分钟快速了解OceanGPT(沧渊)
10分钟快速了解OceanGPT(沧渊) 海洋科学任务的大语言模型——OceanGPT OceanGPT是如何训练的?为了训练 OceanGPT (沧渊) ,收集了一个跨越多个领域的海洋科学语料库。由于每个子领域和主题都有其独特的数据特征和模式,因此提出了一个特定于领域的指令生成框架,称为 DoDirec…...
学习及笔记
1、计算md5 md5sum 文件名 2、跨服务器复制 scp 文件 目标用户名目标Ip:目标路径 3、curl curl -X POST http://10.105.2.46/getUerls -H "Content-Type: application/json" -d {"id": 379, "userId": "lyc", "password":…...
TensorFlow Quantum快速编程(基本篇)
一、TensorFlow Quantum 概述 1.1 简介 TensorFlow Quantum(TFQ)是由 Google 开发的一款具有开创性意义的开源库,它宛如一座桥梁,巧妙地将量子计算与 TensorFlow 强大的机器学习功能紧密融合。在当今科技飞速发展的时代,传统机器学习虽已取得诸多瞩目成就,然而面对日益…...
Vue.js组件开发-实现图片裁剪
在Vue.js中开发一个图片裁剪组件,可以使用cropperjs库,它是一个功能强大的JavaScript库,专门用于图片裁剪。在Vue项目中,可以通过vue-cropperjs这个Vue包装器来更方便地使用cropperjs。 步骤: 1. 安装依赖 首先&…...
Jira用例自动去除summary重复用例
title: Jira用例自动去除summary重复用例 tags: - jira - python categories: - python一、背景与需求二、解决方案思路三、实施步骤本文永久更新地址: 在使用 Jira 进行项目管理时,测试用例的维护至关重要。随着项目推进,用例数量增多,可能…...
2024年开发语言热度排名
随着技术的不断发展和变化,编程语言的热度也在不断演变。2024年即将到来,我们有必要回顾和展望当前和未来的开发语言市场。本文将基于多个因素,包括行业需求、社区支持、流行度以及新兴趋势,对2024年的开发语言热度进行排名和分析…...
【ArcGIS初学】产生随机点计算混淆矩阵
混淆矩阵:用于比较分类结果和地表真实信息 总体精度(overall accuracy) :指对角线上所有样本的像元数(正确分类的像元数)除以所有像元数。 生产者精度(producers accuracy) :某类中正确分类的像元数除以参考数据中该类的像元数(列方向),又称…...
OpenScholar助高效检索和整合科学文献?
从事科研的人都离不开读文献。然而,如今每年发表的论文数量已达数百万篇(例如,某位大佬在硕博期间就发表了178篇~)。在如此海量的文献中,如何高效利用宝贵的时间获取所需信息,显得尤为重要。 近…...
代码随想录Day34 | 62.不同路径,63.不同路径II,343.整数拆分,96.不同的二叉搜索树
代码随想录Day34 | 62.不同路径,63.不同路径II,343.整数拆分,96.不同的二叉搜索树 62.不同路径 动态规划第二集: 比较标准简单的一道动态规划,状态转移方程容易想到 难点在于空间复杂度的优化,详见代码 class Solution {public int uniq…...
非PHP开源内容管理系统(CMS)一览
在现代网站开发中,内容管理系统(CMS)是不可或缺的工具。虽然许多广泛使用的CMS(如WordPress和Joomla)是基于PHP开发的,但其他编程语言同样诞生了许多优秀的开源CMS,适用于不同需求和技术栈的项目…...
【Rust】常见集合
目录 思维导图 一、Rust常用集合 1. Rust标准库中的集合概述 2. 常用集合类型 2.1 向量(Vector) 2.2 字符串(String) 2.3 哈希映射(Hash Map) 二、向量(Vec) 1. 向量的概述…...
55. 跳跃游戏
题目 给你一个非负整数数组 nums ,你最初位于数组的 第一个下标 。数组中的每个元素代表你在该位置可以跳跃的最大长度。 判断你是否能够到达最后一个下标,如果可以,返回 true ;否则,返回 false 。 C #include <…...
关于 ThinkPHP 与 PostgreSQL 结合使用的一些要点
ThinkPHP 是一款流行的 PHP 开发框架,而 PostgreSQL 是功能强大的开源关系型数据库。它们可以结合使用来开发各类应用,以下是关于 ThinkPHP 与 PostgreSQL 结合使用的一些要点: 配置数据库连接 编辑配置文件:在 ThinkPHP 项目中&…...
【 PID 算法 】PID 算法基础
一、简介 PID即:Proportional(比例)、Integral(积分)、Differential(微分)的缩写。也就是说,PID算法是结合这三种环节在一起的。粘一下百度百科中的东西吧。 顾名思义,…...
介绍下不同语言的异常处理机制
Golang 在Go语言中,有两种用于处于异常的机制,分别是error和panic; panic panic 是 Go 中处理异常情况的机制,用于表示程序遇到了无法恢复的错误,需要终止执行。 使用场景 程序出现严重的不符合预期的问题&#x…...
Sprint Boot教程之五十八:动态启动/停止 Kafka 监听器
Spring Boot – 动态启动/停止 Kafka 监听器 当 Spring Boot 应用程序启动时,Kafka Listener 的默认行为是开始监听某个主题。但是,有些情况下我们不想在应用程序启动后立即启动它。 要动态启动或停止 Kafka Listener,我们需要三种主要方法…...
Linux服务器网络丢包场景及解决办法
一、Linux网络丢包概述 在数字化浪潮席卷的当下,网络已然成为我们生活、工作与娱乐不可或缺的基础设施,如同空气般,无孔不入地渗透到各个角落。对于 Linux 系统的用户而言,网络丢包问题却宛如挥之不去的 “噩梦”,频繁…...
2025年01月13日Github流行趋势
1. 项目名称:Jobs_Applier_AI_Agent 项目地址url:https://github.com/feder-cr/Jobs_Applier_AI_Agent项目语言:Python历史star数:25929今日star数:401项目维护者:surapuramakhil, feder-cr, cjbbb, sarob…...
贪心算法详细讲解(沉淀中)
文章目录 1. 什么是贪心算法?(贪婪鼠目寸光)经典例题1.1.1 找零问题1.1.2最小路径和1.1.3 背包问题 2.贪心算法的特点2.1 证明例1 3.学习贪心的方向心得体会 1. 什么是贪心算法?(贪婪鼠目寸光) 贪心策略&a…...
C/C++ 数据结构与算法【排序】 常见7大排序详细解析【日常学习,考研必备】带图+详细代码
常见7种排序算法 冒泡排序(Bubble Sort)选择排序(Selection Sort)插入排序(Insertion Sort)希尔排序(Shell Sort)归并排序(Merge Sort)快速排序(…...
Oracle Dataguard(主库为双节点集群)配置详解(4):配置备库
Oracle Dataguard(主库为双节点集群)配置详解(4):配置备库 目录 Oracle Dataguard(主库为双节点集群)配置详解(4):配置备库一、为备库配置静态监听1、配置 li…...
【Unity3D日常开发】Unity3D中打开Window文件对话框打开文件(PC版)
推荐阅读 CSDN主页GitHub开源地址Unity3D插件分享QQ群:398291828小红书小破站 大家好,我是佛系工程师☆恬静的小魔龙☆,不定时更新Unity开发技巧,觉得有用记得一键三连哦。 一、前言 这篇文章继续讲如何使用Unity3D打开Window文…...
STM32-RTC实时时钟
1.0 RTC简介 RTC(Real Time Clock)实时时钟 RTC是一个独立的定时器,可为系统提供时钟和日历的功能 RTC和时钟配置系统处于后备区域,系统复位时数据不清零,VDD(2.0~3.6V)断电后可借助VBAT&#x…...
QT跨平台应用程序开发框架(1)—— 环境搭建
目录 一,关于QT 二,关于应用程序框架 三,环境搭建 3.1 预备 3.2 下载Qt SDK 3.3 安装Qt SDK 3.4 配置环境变量 3.5 认识一些重要工具 四,Qt Creator 的基本使用 4.1 创建项目 4.2 代码解释 一,关于QT 互联网…...
HTB:Paper[WriteUP]
目录 连接至HTB服务器并启动靶机 信息收集 使用rustscan对靶机TCP端口进行开放扫描 将靶机TCP开放端口号提取并保存 使用nmap对靶机TCP开放端口进行脚本、服务扫描 使用nmap对靶机TCP开放端口进行漏洞、系统扫描 使用nmap对靶机常用UDP端口进行开放扫描 对靶机进行子域…...
【数据可视化-12】数据分析岗位招聘分析
🧑 博主简介:曾任某智慧城市类企业算法总监,目前在美国市场的物流公司从事高级算法工程师一职,深耕人工智能领域,精通python数据挖掘、可视化、机器学习等,发表过AI相关的专利并多次在AI类比赛中获奖。CSDN…...
UE材质节点Fresnel
Fresnel节点 ExponentIn 控制边缘透明度 BaseReflectFractionIn 控制中心透明度...
宁德时代C++后端开发面试题及参考答案
请阐述面向对象的三大特性。 面向对象编程有三大特性,分别是封装、继承和多态。 封装是指将数据和操作数据的方法绑定在一起,对数据的访问和操作进行限制。这样做的好处是可以隐藏对象的内部细节,只暴露必要的接口给外部。例如,我们可以把一个汽车类的内部引擎状态、速度等…...
opencv warpAffine仿射变换C++源码分析
基于opencv 3.1.0源代码 sources\modules\imgproc\src\imgwarp.cpp void cv::warpAffine( InputArray _src, OutputArray _dst,InputArray _M0, Size dsize,int flags, int borderType, const Scalar& borderValue ) {...if( !(flags & WARP_INVERSE_MAP) ){//变换矩阵…...
六十九:基于openssl实战验证RSA
RSA(Rivest-Shamir-Adleman)是一种非对称加密算法,广泛应用于数据加密和数字签名领域。在实际开发和学习过程中,理解 RSA 的工作原理和使用场景非常重要。本文将以 OpenSSL 工具为基础,通过实例操作来验证和理解 RSA 的…...
Docker的CMD指令
CMD指令是Dockerfile中的一个重要指令,用于指定容器启动时执行的默认命令。CMD为容器运行时提供了一个默认的执行指令,可以在容器启动时自动运行该命令。 * CMD指令用于指定容器启动时的默认命令 CMD指令指定的命令通常是容器启动后要执行的主要进程。…...
redis缓存篇知识点总结
1.缓存雪崩 当大量缓存数据在同一时间过期(失效)或者 Redis 故障宕机时,如果此时有大量的用户请求,都无法在 Redis 中处理,于是全部请求都直接访问数据库,从而导致数据库的压力骤增,严重的会造成数据库宕机,从而形成一系列连锁反应,造成整个系统崩溃 发生缓存雪崩有两…...
onlyoffice编辑服务部署
下载官方镜像 下载onlyoffice_7.4.1.tar.gz镜像包 安装官方镜像 上传镜像包后执行 docker load -i onlyoffice_7.4.1.tar.gz 将镜像部署到本地仓库 下载onlyoffice编辑服务包 下载onlyoffice.zip包 启动onlyoffice编辑服务 上传包至服务器,解压包,…...
RPC实现原理,怎么跟调用本地一样
回答1 要让⽹络通信细节对使⽤者透明,我们需要对通信细节进⾏封装,我们先看下⼀个 RPC 调⽤的流程涉及到哪些通 信细节: 1. 服务消费⽅( client )调⽤以本地调⽤⽅式调⽤服务; 2. client stub 接收到调…...
JDK下载安装配置
一.JDK安装配置。 1.安装注意路径,其他直接下一步。 2.配置。 下接第4步. 或者 代码复制: JAVA_HOME D:\Program Files\Java\jdk1.8.0_91 %JAVA_HOME%\bin 或者直接配置 D:\Program Files\Java\jdk1.8.0_91\bin 3.验证(CMD)。 java javac java -version javac -version 二.下…...
C++(3)
1.顺序表封装 #include <iostream>using namespace std;//类型重命名 using datatype int;//定义一个顺序表类 class SeqList { private:datatype *data;//指向堆区空间的指针int size 0;//数组大小int len 0;//顺序表实际长度public://无参构造SeqList():data(new d…...
工具学习_Conan_Install
1. 依赖关系获取 为了获取TPL间的依赖关系,我们首先从 GitHub 项目中提取 Conan 包含的组件,如下所示: 在获取组件名之后,我们根据组件名从 Conan 中获取 TPL 间的依赖关系,如下图所示: 之后获得包含TPL间…...
忘记了PDF文件的密码,怎么办?
PDF文件可以加密,大家都不陌生,并且大家应该也都知道PDF文件有两种密码,一个打开密码、一个限制编辑密码,因为PDF文件设置了密码,那么打开、编辑PDF文件就会受到限制。忘记了PDF密码该如何解密? PDF和offi…...
HTML实战课堂之启动动画弹窗
一:代码片段讲解 小提示:下面是一个包含启动页和弹窗的完整示例。这个示例包括一个简单的启动页和一个弹窗,当用户点击启动页上的按钮时,会显示弹窗。 1. **HTML结构**: - #startPage:启动页,包…...
thinkphp 5.0 结合redis 做延迟队列,队列无法被消费
目录 一、Linux 环境下 二、如何验证消息队列被正确监听 一、Linux 环境下 项目部署在Linux 环境下,首先找到项目的部署路径,接着输入命令,这个命令是以守护进程方式进行监听你的队列,只要redis 不关闭 就可以一直监听这个队列 nohup php …...
open3d+opencv实现矩形框裁剪点云操作(C++)
👑主页:吾名招财 👓简介:工科学硕,研究方向机器视觉,爱好较广泛… 💫签名:面朝大海,春暖花开! open3dopencv实现矩形框裁剪点云操作(Cÿ…...
Android RIL(Radio Interface Layer)全面概述和知识要点(3万字长文)
在Android面试时,懂得越多越深android framework的知识,越为自己加分。 目录 第一章:RIL 概述 1.1 RIL 的定义与作用 1.2 RIL 的发展历程 1.3 RIL 与 Android 系统的关系 第二章:RIL 的架构与工作原理 2.1 RIL 的架构组成 2.2 RIL 的工作原理 2.3 RIL 的接口与协议…...
mac安装java17
目录 1、确保 Homebrew 已安装。如果没有安装,运行以下命令2、安装 OpenJDK 173、安装完成后,运行以下命令设置环境变量4、检查一下 1、确保 Homebrew 已安装。如果没有安装,运行以下命令 /bin/bash -c "$(curl -fsSL https://raw.gith…...
npx和npm区别
npx 和 npm 是 Node.js 生态中的两个工具,它们有不同的用途和功能: 1. npm(Node Package Manager) 主要作用: 包管理工具: 用来安装、管理、卸载 Node.js 的包(module/library)。提…...
STM32 FreeRTOS 介绍
目录 什么是裸机开发 什么是操作系统 通用操作系统 实时操作系统 FreeRTOS简介 FreeRTOS发展历史 FreeRTOS优势 FreeRTOS特点 什么是裸机开发 裸机开发指的是在没有操作系统(OS)或者其他高级软件支持的情况下,直接在裸机硬件上进行软…...