数据挖掘概念与技术(第三版)课后答案——第三章_数据挖掘概念与技术(第三版)课后答案——第三章-程序员宅基地

技术标签: 数据挖掘  大数据  

=============需要原版答案请留言!!==============


3.1 数据质量可以从多方面评估,包括准确性、完整性、一致性问题。 提出其他两个方面的数据质量。

准确性:对于一些需要进行精准营销的商品,比如蛋糕店的生日蛋糕、孕妇必备物品等,以上这些商品则需要数据的准确性。

完整性:如果要对某宝、某东或者某宁的买家信息进行一个数据挖掘,从而用来营销其他东西,比如要对地址进行挖掘,此时详细、完整的地址数据则是一个必备的特性。

一致性问题:由于某些不可抗因素而导致的数据不一致,比如技术问题,在并发量大的情况下,记录数据时出现问题;或者某些数据值是一样的,然而在不同的数据库中其命名却不一样;这些不一致性问题在数据挖掘时则会影响挖掘的结果。

数据质量的其他两个尺度:时效性和可信性。

时效性:数据必须在一定时间范围内可用,以便对决策有用。

可信性:数据值必须在可能结果的范围内,以便对决策有用。

 3.2在实际数据中,某些属性缺少值的元组是常见的情况。 描述解决此问题的各种方法。

处理数据元组中缺少值的问题的各种方法包括:

(a)忽略元组:通常在缺少类标签时执行此操作(假设挖掘任务涉及分类或描述)。除非元组包含缺少值的几个属性,否则此方法不太有效。当每个属性的缺失值的百分比相差很大时,这尤其差劲。

(b)手动填充缺失值:通常,此方法很耗时,对于缺失值很多的大型数据集,这可能不是一个合理的任务,尤其是当填充值不容易确定时。

(c)使用全局常量填充缺失值:用相同的常量替换所有缺失的属性值,例如“ Unknown”或-∞之类的标签。如果将缺失的值替换为“未知”,则挖掘程序可能会错误地认为它们构成了一个有趣的概念,因为它们都具有一个共同的值,即“未知”。因此,尽管此方法很简单,但不建议使用。

(d)将属性均值用于定量(数字)值或将属性模式用于分类(标称)值:例如,假设AllElectronics客户的平均收入为$ 28,000。 使用此值替换任何缺失的收入值。

(e)对于属于与给定元组相同类别的所有样本,使用定量(数值)值的属性均值或分类(名义)值的属性模式:例如,如果根据信用风险对客户进行分类,则替换缺失的 与给定元组处于相同信用风险类别的客户的平均收入值。

(f)使用最可能的值来填补缺失值:这可以通过回归,使用贝叶斯形式主义的基于推理的工具或决策树归纳法来确定。 例如,使用数据集中的其他客户属性,我们可以构建决策树来预测收入的缺失值。

 3.3 在习题2.2中,属性age包括如下值(以递增序) :13、15、16、16、19、20、20、21、22、22、25、25、25、25、30、33、33、35、35 ,35、35、36、40、45、46、52、70。

(a) 使用深度为3的箱,用箱均值光滑以上数据。说明你的步骤,讨论这种技术对给定数据的效果。

(b) 如何确定该数据中的离群点?

(c) 还有什么其他方法可以用来光滑数据

(a) 使用深度为3的箱,用箱均值光滑以上数据。说明你的步骤,讨论这种技术对给定数据的效果:
首先,将以上数据划分为深度为3的箱:(13,15,16),(16,19,20),(20,21,22),(22,25,25),(25,25,30),(33,33,35),(35,35,35),(36,40,45),(46,52,70);

其次,用箱均值光滑:(14.7,14.7,14.7),(18.3,18.3,18.3),(21,21,21), (24,24,24),(26.7,26.7,26.7),(33.7,33.7,33.7), (35,35,35),(40.3,40.3,40.3),(56,56,56)。

对于给定数据,该方法虽然在一定程度上光滑了噪声数据,但是由于箱深度太小,将数据的分布特征也抹去了。
(b) 如何确定该数据中的离群点:
可以通过聚类来检测数据中的异常值,在聚类中,将相似的值组织为组或“集群”。 落在聚类集之外的值可以被认为是离群值。 可替代地,在预定的数据分布被实现以允许计算机识别可能的异常值的情况下,可以使用计算机和人工检查的组合。 然后,可以通过人工检查来验证这些可能的异常值,而所需的误差却比验证整个初始数据集所需的误差小得多。

(c) 还有什么其他方法可以用来光滑数据:
可以用于数据平滑的其他方法包括分箱的其他形式,例如通过箱中值进行平滑或通过箱边界进行平滑。 可替代地,等宽度的箱可用于实现任何形式的分级,其中每个箱中的值的间隔范围是恒定的。 除装仓外,其他方法还包括使用回归技术通过将数据拟合到函数(例如通过线性回归或多元回归)来平滑数据。 分类技术可用于实现概念层次结构,这些概念层次结构可通过将较低级别的概念汇总到较高级别的概念来平滑数据。

3.4 讨论数据集成需要考虑的问题。 

数据集成涉及将来自多个源的数据组合到一个一致的数据存储中。 在这种集成过程中必须考虑的问题包括:

  • 模式集成:必须集成来自不同数据源的元数据,以匹配等效的实际实体。 这称为实体识别问题。
  • 处理冗余数据:派生的属性可能是冗余的,不一致的属性命名也可能导致结果数据集中的冗余。 在元组级别可能出现重复,因此需要检测和解决。
  • 数据值冲突的检测和解决:表示,缩放或编码上的差异可能导致相同的现实世界实体属性值在要集成的数据源中有所不同。

 3.5 如下规范化方法的值域是什么?

(a)最小-最大规范化。

(b)z分数规范化。

(c)z分数规范化,使用绝对偏差而不是标准差。

(d)小数定标规范化

  • 最小最大规范化:[new_min, new_max]
  • z分数规范化:
  • z分数规范化,使用绝对偏差而不是标准差:
  • 小数定标规范化: (−1.0,1.0)

3.6 使用如下方法规范化如下数据组:200,300,400,600,1000

(a)令min=0,max=1min=0,max=1,最小最大规范化。

(b)z分数规范化。

(c)z分数规范化,使用均值绝对值偏差而不是标准差。

(d)小数定标规范化。

(a)令min=0,max=1min=0,max=1,最小最大规范化:

(b)z分数规范化:

,其中

(c)z分数规范化,使用均值绝对值偏差而不是标准差

规范化后为−1.25,−0.83,−0.42,0.42,2.08。

(d)小数定标规范化:

,规范化后为0.2,0.3,0.4,0.6,0.1。

3.7 使用习题3.3中给出的age数据,回答以下问题:

(a)使用最小最大规范化将age值35变换到[0.0,1.0]区间。

(b)使用z分数规范化,变换age,其中标准差为12.94。

(c)使用小数定标规范化变换35。

(d)指出给定数据,你愿意使用哪种方法。陈述你的理由。

(a)使用最小最大规范化将age值35变换到[0.0,1.0]区间

为了便于阅读,将A设为属性年龄。 使用公式,其中minA = 13,maxA = 70,new_minA = 0,,new_maxA = 1.0,然后将v = 35转换为v` = 0.39。

(b)使用z分数规范化,变换age,其中标准差为12.94

使用公式(其中 = 809/27 = 29.96和= 12.94),然后将v = 35转换为v` = 0.39。

(c)使用小数定标规范化变换35

使用公式(其中j = 2),将v = 35转换为v` = 0.35。

(d)指出给定数据,你愿意使用哪种方法。陈述你的理由

在给定数据的情况下,人们可能更喜欢使用十进制缩放进行规范化,因为这样的转换将保持数据的分布并直观地解释,同时仍允许在特定年龄段进行挖掘。最小最大规范化具有不希望的结果,即不允许任何将来的值落在当前的最小值和最大值之外,而不会遇到“超出范围的误差”。 由于此类值可能会出现在将来的数据中,因此此方法不太合适。最小最大规范化z分数规范化都极大地改变了原始数据。z分数规范化将值转换为表示它们与标准差之间的距离的度量。 与十进制缩放相比,这种类型的转换对用户而言可能不那么直观。

 3.8 使用习题2.4中给出的age和%fat数据数据,回答如下问题:

(a) 基于z分数规范化,规范化这两个属性。
(b) 计算相关系数(Pearson积矩系数)。这两个变量是正相关还是负相关?计算他们的协方差。

直接套公式即可:

z分数规范化:

相关系数:

协方差:

协方差与相关系数的关系:

3.9 假设12个销售价格记录已经排序,如下所示:5,10,11,13,15,35,50,55,55,72,92,204,215
(a) 等频划分。

(b) 等宽划分

(c) 聚类

(a) 等频划分。

(a) 等频划分。

bin1     5, 10, 11, 13
bin2     15, 35, 50, 55
bin3   72, 92, 204, 215

(b) 等宽划分

等宽分箱:将变量的取值范围分为k个等宽的区间,每个区间当做一个分箱;(215−5)/3=70(215−5)/3=70, 所以区间的距离为70,又需要将其划分为3个箱。

bin1     5, 10, 11, 13, 15, 35, 50, 55, 72
bin2     92
bin3   204, 215

(c) 聚类

这里以数字间的最大间隔来进行一个简单的聚类;

bin1     5, 10, 11, 13,15
bin2     35, 50, 55,72,92
bin3    204, 215

3.10 使用流程图概述如下属性子集选择过程。

(a) 逐步向前选择

(b)逐步向后删除

(c)逐步向前选择和逐步向后删除的组合 

 (a) 逐步向前选择

(b)逐步向后删除

(c)逐步向前选择和逐步向后删除的组合 

3.11使用练习3.3中给出的age数据,

(a) 绘制宽度为10的等宽直方图。

(b) 简要描述如下每种抽样技术的例子:SRSWOR,SRSWR,簇采样,分层抽样。 使用大小为5的样本以及层“youth”, “middle-aged”,和“senior”。

(a)绘制宽度为10的等宽直方图:

(b)简要描述如下每种抽样技术的例子:SRSWOR,SRSWR,簇采样,分层抽样。 使用大小为5的样本以及层“youth”, “middle-aged”,和“senior”:

 元组:

 无放回简单随机抽样 VS 有放回简单随机抽样

 簇抽样:初始簇

 簇抽样

 

分层抽样:

3.12  ChiMerge [Ker92]是一种有监督的,自底向上的(即基于合并的)数据离散化方法。 它依靠χ2分析:将具有最小χ2值的相邻区间合并在一起,直到满足所选的停止标准为止。

(a)简要描述ChiMerge如何工作。

(a)简要描述ChiMerge如何工作。

chiMerge的基本算法是:

begin 
    sort values in ascending order
    assign a separate interval to each distinct value while stopping criteria not met 
    begin 
        compute χ2 of every pair of adjacent intervals 
        merge the two intervals with smallest χ2 value 
    end
end

(b)。。。

3.13 使用伪代码或您喜欢的编程语言提出以下算法:

(a)对于标称数据,基于给定模式中属性的不同值的个数,自动产生概念分层。

(b)对于数值数据,基于等宽划分规则,自动产生概念分层。

(c)对于数值数据,基于等额划分规则,自动产生概念分层。

(a)对于标称数据,基于给定模式中属性的不同值的个数,自动产生概念分层。

用于根据给定架构中属性的不同值的数量自动生成分类数据的概念层次结构的伪代码:

begin 
// 数组以保存名称和属性的不同值计数
// 用于生成概念层次结构
array count_ary[];  // 属性值计数
string count_ary[].name; // 属性名称
int count_ary[].count; //唯一值计数
// 表示概念层次结构的数组(作为值的有序列表)
array concept_hierarchy[];
for each attribute ’A’ in schema { 
    distinct_count = count distinct ’A’; 
    insert (’A’, ’distinct_count’) into count_ary[]; 
} 
//按count升序对ary []进行排序;
sort count_ary[] ascending by count;
for (i = 0; i < count_ary[].length; i++) { 
// 生成概念层次结构节点
    concept_hierarchy[i] = count_ary[i].name; 
} 
end

注:为了指示在概念层次结构中生成另一个级别所需的最小计数阈值,用户可以指定一个附加参数。 

(b)对于数值数据,基于等宽划分规则,自动产生概念分层。

用于根据等额划分规则自动生成数字数据的概念层次结构的伪代码:

begin 
// 用于生成概念层次结构的数值属性 
string concept_attb;

// //表示概念层次结构(作为值的有序列表)
array concept_hierarchy[];

string concept_hierarchy[].name; // 属性名称 
int concept_hierarchy[].max; // 箱的最大值 
int concept_hierarchy[].min; // 箱的最小值 
int concept_hierarchy[].mean; // 箱的平均值 
int concept_hierarchy[].sum; // 箱的总和 
int concept_hierarchy[].count; // 箱的元组计数 

int range_min; // 用户指定的最小数据值 
int range_max; // 用户指定的最大数据值 
int step; // 用户指定的箱的宽度
int j=0;

// 初始化概念层次结构数组 
for (i=0; i < range_max; i+=step) { 
    concept_hierarchy[j].name = ’level_’ + j; 
    concept_hierarchy[j].min = i; 
    concept_hierarchy[j].max = i + step − 1; 
    j++; 
} 

// 必要时初始化最终最大值
if (i >=range_max) { 
    concept_hierarchy[j].max = i + step − 1; 
} 

// 通过增加适当的总和和计数值,将每个值分配给箱 
for each tuple T in task relevant data set { //遍历目标数组
    int k=0; 
    while (T.concept_attb > concept_hierarchy[k].max) { 
        k++; 
    } 
    concept_hierarchy[k].sum += T.concept_attb; //每个箱的总和
    concept_hierarchy[k].count++; //每个箱的计数值
} 

// 计算用于表示每个级别值的箱度量
// 在概念层次结构中 
for (i=0; i < concept_hierarchy[].length; i++) {
    //计算每个箱的平均值
    concept_hierarchy[i].mean = concept_hierarchy[i].sum / concept_hierarchy[i].count; 
} end

 用户可以针对有关数据的背景知识(即,将标签年轻人,中年人和老人分配给三级层次结构),为通过查看垃圾箱的最大值和最小值而生成的概念层次结构级别指定更有意义的名称 此外,可以实现一种替代的合并方法,例如通过合并模式进行平滑。

(c)对于数值数据,基于等额划分规则,自动产生概念分层。

用于根据等频划分规则自动生成数字数据的概念层次结构的伪代码:

begin 
// 用于生成概念层次结构的数值属性 
string concept_attb;

// //表示概念层次结构(作为值的有序列表) 
array concept_hierarchy[];

string concept_hierarchy[].name; // 属性名称 
int concept_hierarchy[].max; // 箱的最大值 
int concept_hierarchy[].min; // 箱的最小值 
int concept_hierarchy[].mean; // 箱的平均值 
int concept_hierarchy[].sum; // 箱的总和 
int concept_hierarchy[].count; // 箱的元组计数 

int bin_depth; // 用户指定的箱深度 
int range_max; // 用户指定的最大数据值 
int step; // 用户指定的箱的宽度

// 初始化概念层次结构数组 
for (i=0; i < (range max/bin depth); i++) { 
    concept_hierarchy[j].name = ’level_’ + j; 
    concept_hierarchy[j].min = 0; 
    concept_hierarchy[j].max = 0; 
} 

//对与任务相关的数据集进行排序,对按概念attb升序排列的数据集进行排序;
int j=1; 
int k=0;

// 通过增加适当的总和和计数值,将每个值分配给箱 
//必要时的最小值和最大值
for each tuple T in task relevant data set { 
    concept_hierarchy[k].sum += T.concept_attb; //每个箱的总和
    concept_hierarchy[k].count++; //每个箱的计数值
    //判断每个箱的最小值
    if (T.concept_attb <= concept_hierarchy[k].min) { 
        concept_hierarchy[k].min = T.concept_attb; 
    }
    //判断每个箱的最大值
    if (T.concept_attb >= concept_hierarchy[k].max) { 
        concept_hierarchy[k].max = T.concept_attb; 
    };  
    j++; 
    if (j > bin_depth) { 
        k++; 
        j=1; 
    }
}

// 计算用于表示每个级别值的箱度量
// 在概念层次结构中 
for (i=0; i < concept_hierarchy[].length; i++) {
    //计算每个箱的平均值
    concept_hierarchy[i].mean = concept_hierarchy[i].sum / concept_hierarchy[i].count; 
} 
end

该算法不会尝试在多个分箱中分配数据值,以消除最终分箱的实际深度与要实现的所需深度之间的任何差异。 用户可以再次为概念层次结构级别指定更有意义的名称,这些概念层次结构级别是通过查看有关数据背景知识的箱的最大值和最小值来生成的。

 3.14 数据库系统中鲁棒的数据加载时提出了一个挑战,因为输入数据常常是脏的。 在许多情况下,输入记录可能缺少几个值,并且某些记录可能会被污染(即某些数据值不在期望的值域内或具有不同的类型)。 设计一种自动的数据清理和加载算法,使得有错误的数据被标记,被受污染的数据加载时不会错误地插入数据库中。

begin 
    for each record r 
        begin 
            check r for missing values 
                If possible, fill in missing values according to domain knowledge 
                (e.g. mean, mode, most likely value, etc.). 
            check r for out of range values 
                If possible, correct out of range values according to domain knowledge 
                (e.g. min or max value for the attribute). 
            check r for erroneous data types 
                If possible, correct data type using domain knowledge 
            If r could not be corrected, mark it as bad and output it to a log, otherwise load r into the database. 
        end
end

领域知识可以是手动工作和自动工作的组合。 例如,我们可以使用数据库中的数据来构建决策树,以诱导给定属性的缺失值,并且同时具有关于如何纠正错误数据类型的人工输入规则。

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/qq_43060870/article/details/107099163

智能推荐

C#连接OPC C#上位机链接PLC程序源码 1.该程序是通讯方式是CSharp通过OPC方式连接PLC_c#opc通信-程序员宅基地

文章浏览阅读565次。本文主要介绍如何使用C#通过OPC方式连接PLC,并提供了相应的程序和学习资料,以便读者学习和使用。OPC服务器是一种软件,可以将PLC的数据转换为标准的OPC格式,允许其他软件通过标准接口读取或控制PLC的数据。此外,本文还提供了一些学习资料,包括OPC和PLC的基础知识,C#编程语言的教程和实例代码。这些资料可以帮助读者更好地理解和应用本文介绍的程序。1.该程序是通讯方式是CSharp通过OPC方式连接PLC,用这种方式连PLC不用考虑什么种类PLC,只要OPC服务器里有的PLC都可以连。_c#opc通信

Hyper-V内的虚拟机复制粘贴_win10 hyper-v ubuntu18.04 文件拷贝-程序员宅基地

文章浏览阅读1.6w次,点赞3次,收藏10次。实践环境物理机:Windows10教育版,操作系统版本 17763.914虚拟机:Ubuntu18.04.3桌面版在Hyper-V中的刚安装好Ubuntu虚拟机之后,会发现鼠标滑动很不顺畅,也不能向虚拟机中拖拽文件或者复制内容。在VMware中,可以通过安装VMware tools来使物理机和虚拟机之间达到更好的交互。在Hyper-V中,也有这样的工具。这款工具可以完成更好的鼠标交互,我的..._win10 hyper-v ubuntu18.04 文件拷贝

java静态变量初始化多线程,持续更新中_类初始化一个静态属性 为线程池-程序员宅基地

文章浏览阅读156次。前言互联网时代,瞬息万变。一个小小的走错,就有可能落后于别人。我们没办法去预测任何行业、任何职业未来十年会怎么样,因为未来谁都不能确定。只能说只要有互联网存在,程序员依然是个高薪热门行业。只要跟随着时代的脚步,学习新的知识。程序员是不可能会消失的,或者说不可能会没钱赚的。我们经常可以听到很多人说,程序员是一个吃青春饭的行当。因为大多数人认为这是一个需要高强度脑力劳动的工种,而30岁、40岁,甚至50岁的程序员身体机能逐渐弱化,家庭琐事缠身,已经不能再进行这样高强度的工作了。那么,这样的说法是对的么?_类初始化一个静态属性 为线程池

idea 配置maven,其实不用单独下载Maven的。以及设置新项目配置,省略每次创建新项目都要配置一次Maven_安装idea后是不是不需要安装maven了?-程序员宅基地

文章浏览阅读1w次,点赞13次,收藏43次。说来也是惭愧,一直以来,在装环境的时候都会从官网下载Maven。然后再在idea里配置Maven。以为从官网下载的Maven是必须的步骤,直到今天才得知,idea有捆绑的 Maven 我们只需要搞一个配置文件就行了无需再官网下载Maven包以后再在新电脑装环境的时候,只需要下载idea ,网上找一个Maven的配置文件 放到 默认的 包下面就可以了!也省得每次创建项目都要重新配一次Maven了。如果不想每次新建项目都要重新配置Maven,一种方法就是使用默认的配置,另一种方法就是配置 .._安装idea后是不是不需要安装maven了?

奶爸奶妈必看给宝宝摄影大全-程序员宅基地

文章浏览阅读45次。家是我们一生中最重要的地方,小时候,我们在这里哭、在这里笑、在这里学习走路,在这里有我们最真实的时光,用相机把它记下吧。  很多家庭在拍摄孩子时有一个看法,认为儿童摄影团购必须是在风景秀丽的户外,即便是室内那也是像大酒店一样...

构建Docker镜像指南,含实战案例_rocker/r-base镜像-程序员宅基地

文章浏览阅读429次。Dockerfile介绍Dockerfile是构建镜像的指令文件,由一组指令组成,文件中每条指令对应linux中一条命令,在执行构建Docker镜像时,将读取Dockerfile中的指令,根据指令来操作生成指定Docker镜像。Dockerfile结构:主要由基础镜像信息、维护者信息、镜像操作指令、容器启动时执行指令。每行支持一条指令,每条指令可以携带多个参数。注释可以使用#开头。指令说明FROM 镜像 : 指定新的镜像所基于的镜像MAINTAINER 名字 : 说明新镜像的维护(制作)人,留下_rocker/r-base镜像

随便推点

毕设基于微信小程序的小区管理系统的设计ssm毕业设计_ssm基于微信小程序的公寓生活管理系统-程序员宅基地

文章浏览阅读223次。该系统将提供便捷的信息发布、物业报修、社区互动等功能,为小区居民提供更加便利、高效的服务。引言: 随着城市化进程的加速,小区管理成为一个日益重要的任务。因此,设计一个基于微信小程序的小区管理系统成为了一项具有挑战性和重要性的毕设课题。本文将介绍该小区管理系统的设计思路和功能,以期为小区提供更便捷、高效的管理手段。四、总结与展望: 通过本次毕设项目,我们实现了一个基于微信小程序的小区管理系统,为小区居民提供了更加便捷、高效的服务。通过该系统的设计与实现,能够提高小区管理水平,提供更好的居住环境和服务。_ssm基于微信小程序的公寓生活管理系统

如何正确的使用Ubuntu以及安装常用的渗透工具集.-程序员宅基地

文章浏览阅读635次。文章来源i春秋入坑Ubuntu半年多了记得一开始学的时候基本一星期重装三四次=-= 尴尬了 觉得自己差不多可以的时候 就吧Windows10干掉了 c盘装Ubuntu 专心学习. 这里主要来说一下使用Ubuntu的正确姿势Ubuntu(友帮拓、优般图、乌班图)是一个以桌面应用为主的开源GNU/Linux操作系统,Ubuntu 是基于DebianGNU/Linux,支..._ubuntu安装攻击工具包

JNI参数传递引用_jni引用byte[]-程序员宅基地

文章浏览阅读335次。需求:C++中将BYTE型数组传递给Java中,考虑到内存释放问题,未采用通过返回值进行数据传递。public class demoClass{public native boolean getData(byte[] tempData);}JNIEXPORT jboolean JNICALL Java_com_core_getData(JNIEnv *env, jobject thisObj, jbyteArray tempData){ //resultsize为s..._jni引用byte[]

三维重建工具——pclpy教程之点云分割_pclpy.pcl.pointcloud.pointxyzi转为numpy-程序员宅基地

文章浏览阅读2.1k次,点赞5次,收藏30次。本教程代码开源:GitHub 欢迎star文章目录一、平面模型分割1. 代码2. 说明3. 运行二、圆柱模型分割1. 代码2. 说明3. 运行三、欧几里得聚类提取1. 代码2. 说明3. 运行四、区域生长分割1. 代码2. 说明3. 运行五、基于最小切割的分割1. 代码2. 说明3. 运行六、使用 ProgressiveMorphologicalFilter 分割地面1. 代码2. 说明3. 运行一、平面模型分割在本教程中,我们将学习如何对一组点进行简单的平面分割,即找到支持平面模型的点云中的所有._pclpy.pcl.pointcloud.pointxyzi转为numpy

以NFS启动方式构建arm-linux仿真运行环境-程序员宅基地

文章浏览阅读141次。一 其实在 skyeye 上移植 arm-linux 并非难事,网上也有不少资料, 只是大都遗漏细节, 以致细微之处卡壳,所以本文力求详实清析, 希望能对大家有点用处。本文旨在将 arm-linux 在 skyeye 上搭建起来,并在 arm-linux 上能成功 mount NFS 为目标, 最终我们能在 arm-linux 里运行我们自己的应用程序. 二 安装 Sky..._nfs启动 arm

攻防世界 Pwn 进阶 第二页_pwn snprintf-程序员宅基地

文章浏览阅读598次,点赞2次,收藏5次。00为了形成一个体系,想将前面学过的一些东西都拉来放在一起总结总结,方便学习,方便记忆。攻防世界 Pwn 新手攻防世界 Pwn 进阶 第一页01 4-ReeHY-main-100超详细的wp1超详细的wp203 format2栈迁移的两种作用之一:栈溢出太小,进行栈迁移从而能够写入更多shellcode,进行更多操作。栈迁移一篇搞定有个陌生的函数。C 库函数 void *memcpy(void *str1, const void *str2, size_t n) 从存储区 str2 _pwn snprintf

推荐文章

热门文章

相关标签