大数据分析与挖掘课后习题参考答案

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

Rescaled =
∗ (max − min) + min

其中 max,min 是各个特征的共享数据,由用户设定。处理后数据所处范
围为[min,max]。
4
from pyspark import SQLContext
from pyspark.context import SparkContext
model.transform(df).show()
print('MinMax')
miScaler=MinMaxScaler(inputCol='Features',outputCol='Feature_MinMax')
model_=miScaler.fit(df)
model.transform(df).show()
其中分层抽样更适合微信小程序受众人群的调查。首先对于某微信小程
序,受程序功能的影响,在不同特征上例如性别,年龄,兴趣等可能存在一定
程度的偏斜。按分层抽样的原理,可以根据不同的特征将总体分成子组,然后
从这些子组中选择样本进一步调查。
8
相对于第二种的随机抽样,第一种按比例分组抽样,所得各组样本的比
例为:
定的范围内随机地抽取一个单位作为初始单位, 然后按事先规定好的规
则确定其他样本单位(先从数字 1 到 k 之间随机抽取一个数字 r 作为初始
单位,以后依次取 r+k, r+2k…等单位);
(3)分层抽样:将总体单位按某种特征或某种规则划分为不同的层
(Strata),然后从不同的层中独立、随机地抽取样本。;
dataFrame=spark.createDataFrame(df)
splits=[min(df['f1']),4.8,5.4,max(df['f1'])]
bucketizer = Bucketizer(splits=splits, inputCol='f1', outputCol='Buc_f1')
from pyspark.ml.linalg import Vectors
from pyspark.ml.feature import MaxAbsScaler
from pyspark.ml.feature import MinMaxScaler
sc=SparkContext('local')
spark=SQLContext(sc)
(Vectors.dense(3.2,1.75,160,6500),)],['Features'])
print('Maxabs')
maScaler=MaxAbsScaler(inputCol='Features',
outputCol='Features_MaxAbs')
model=maScaler.fit(df)
(Vectors.dense(3.7,1.85,113,10000),),
(Vectors.dense(2.5,1.74,141,3200),),
(Vectors.dense(3.6,1.69,156,8000),),
(Vectors.dense(4,1.82,178,9000),),
(Vectors.dense(3.3,1.90,114,15000),),
N * mk
N * m1 N * m2
= m1 : m2 ```: mk ,保持原分组比例,一定程度降
:
:```:
m
m
m
低了抽样的误差(当分组有效时),便于了解总体内不同分组的情况。
第三章 习题
1.
2.
3.
1.
2.
3.
4.
5.
6.
7.
8.
请举例说明“Apriori Property”。
设最小支持度为 33.3%,最小置信度为 50%。按照 Apriori 算法的步骤,给出
5
(1)将上述记录按序如下排列:6,11,12,14,16,36,51,56,73,93,205,216.
等深划分,划分为 4 个箱,即按上述顺序,每 3 个记录放入一箱,所以
16 在第 2 个箱内。
(2)将上述记录按序如下排列:6,11,12,14,16,36,51,56,73,93,205,216.
2
原数据服从正态分布,经过 Z-score 后,服从标准正态分布 N(0,1),由正态
1 − P(0 − 3 *1 ≤ X ≤ 0 + 3 *1) 1 - 0.9973
分布的 3 σ 原则可知, P(X > 3) =
=
= 0.00135
2
2
3
MaxabsScaler:利用被处理特征的特征值中最大绝对值进行处理。处理公
(1) 规则“牙刷 → 防晒霜”与“{牙刷,防晒霜} → {凉鞋}”的置信度分别是多少?
(2) {牙刷}和{防晒霜}是独立的吗?
(3) 计算 Lift (牙刷, 太阳镜) 。
请对比 Apriori 算法和 FP-Growth 算法异同,给出两种算法各自的优点以及
不足。
5. 请设计程序实现显示递归挖掘<a>-投影数据库的过程,数据集采用表 3-34 的
7000
3
3
1.73
135
5500
4
2.8
1.80
120
4000
5
3.7
1.85
113
10000
6
2.5
1.74
141
3200
7
3.6
1.69
156
8000
8
4
1.82
178
9000
9
3.3
1.90
114
15000
10
3.2
1.75
160
6500
假设 12 个销售价格记录如下:6,11,205,14,16,216,36,51,12,56,73,93。
每次扫描题表 3-1 中的数据库后得到的所有频繁项集。在频繁项集的基础上,
产生所有的强关联规则。
题表 3-1
TID
商品
A,B,C,
1
D,E
2
A,B,D,E
3
B,C,D
4
C,D,E
5
A,C,E
6
A,B,D
某商店统计了上个季度 10000 笔交易记录,给出如题表 3-2 所示的统计信息:
题表 3-2
{牙刷}在 6000 个事务中出现;
39.75。即第 2 个箱的值为 39.75。
(4)将上述记录按序如下排列:6,11,12,14,16,36,51,56,73,93,205,216.
等宽划分,划分为 3 个箱,宽度可取 42(并不唯一),此时第 2 个箱的
数据为 51,56,73,93。对于 56,距离最小边界为 51;对于 73,距离最小边
界为 93。所以第 2 个箱内平滑后为 51,51,93,93。
6
#以处理第一列为例
from sklearn.datasets import load_iris
from pyspark.ml.feature import Bucketizer
from pyspark.context import SparkContext
题表 3-3
4.
No.
Outlook
Temperatur
e
Humidit
y
1
sunny
hot
high
2
第 2 章 习题
1.
2.
3.
4.
5.
6.
7.
8.
如果在没经过预处理的数据集合上进行数据挖掘的话,会有哪些问题?
假设原始数据服从正态分布,那么经过 z -score 变换后的标准分大于 3 的概
率有多大?
试分析 Spark 预处理 MaxabsScaler、MinMaxScaler 的处理方法,并给出处理
式为:

Rescaled =
|max |
处理后数据所处范围为[-1,1]。
MinMaxScaler:利用被处理特征的特征值中最大值和最小值进行处理,处
理公式为:

Rescaled =

处理后数据所处范围为[0,1]。
在 spark 中对应的 MinMaxScaler 对上述处理进行了改善,处理公式为:
果目标是得到容量为 n(n < m)的样本,下面两种抽样方案有什么区别?(假
定使用有放回抽样)
(1)从每组随机地选择 × /个元素。
(2)从数据集中随机地选择 n 个元素(不考虑元素属于哪个组)。
第二章 习题答案
1
无法保证数据挖掘的结果的有效性。
数据预处理主要包括数据清洗、数据集成、数据变换、数据归约等内容。
df=spark.createDataFrame([(Vectors.dense(3.2,1.78,130,6000),),
(Vectors.dense(3.5,1.76,122,7000),),
(Vectors.dense(3,1.73,135,5500),),
(Vectors.dense(2.8,1.80,120,4000),),
bucketedData = bucketizer.transform(dataFrame)
bucketedData.show()
7
(1)简单随机抽样:从总体 N 个单位里抽出 n 个单位作为样本(可以重
复抽样,也可以不重复抽样),最常用的抽样方式,参数估计和假设检
验主要依据的就是简单随机样本;
(2)系统抽样:将总体中的所有单位(抽样单位)按一定顺序排列,在规
from pyspark.sql import SparkSession
import pandas as pd
df=pd.DataFrame(load_iris().data,columns=['f1','f2','f3','f4'])
sc=SparkContext('local')
spark=SparkSession(sc)
{防晒霜}在 5000 个事务中出现;
{凉鞋}在 4000 个事务中出现;
{太阳镜}在 2000 个事务中出现;
{牙刷,防晒霜}在 1500 个事务中出现;
{牙刷,凉鞋}在 1000 个事务中出现;
{牙刷,太阳镜}在 250 个事务中出现;
{牙刷,防晒霜,凉鞋}在 600 个事务中出现。
回答如下问题:
序列数据库。
6. 分析 min_support 对 PrefixSpan 算法运行时间和所需存储空间的影响。
7. 阅读 PrefixSpan 算法的参考文献,思考当序列数据集很大,不同的项数又较
多,且每个序列都需要建立一个投影数据库时,如何减少投影数据库的数量
和大小。
8. 如题表 3-3 所示,给出的是一组有关天气状况和能否进行户外活动的数据:
数据清洗:负责解决填充空缺值、识别孤立点、去掉噪声和无关数据等问
题;
数据集成:负责解决不同数据源的数据匹配问题、数值冲突问题和冗余问
题;
数据变换:将原始数据转换为适合数据挖掘的形式。包括数据的汇总、聚
集、概化、规范化,同时可能需要对属性进行重构;
数据归约:负责搜小数据的取值范围,使其更适合数据挖掘算法的需要。
后数据的取值范围。
如题表 2-1 所示,从某个毕业班抽取出的 10 个同学的个人情况数据,包含
4 项特征:成绩绩点、身高、体重、工作月薪。利用两种以上的方法对每个
特征进行预处理。
题表 2-1
序号 成绩绩点 身高(m) 体重(斤) 工作月薪(元/月)
1
3.2
1.78
130
6000
2
3.5
1.76
122
(4)整群抽样:将总体中若干个单位合并为组(群),抽样时直接抽取
群,然后对中选群中的所有单位全部实施调查;
(5)多阶段抽样:先抽取群,但并不是调查群内的所有单位,而是再进
行一步抽样,从选中的群中抽取出若干个单位进行调查(群是初级抽样
单位,第二阶段抽取的是最终抽样单位。将该方法推广,使抽样的段数
增多,就称为多阶段抽样。
等宽划分,划分为 4Fra Baidu bibliotek个箱,宽度可取 20(并不唯一),所以 16 在第 1
个箱内。
(3)将上述记录按序如下排列:6,11,12,14,16,36,51,56,73,93,205,216.
等深划分,划分为 3 个箱,即按上述顺序,每 4 个记录放入一箱。第 2
个箱的数据为 16,36,51,56。平均值平滑法,则这四个数取均值为:
(1)使用等深划分时,将其划分为四个箱,16 在第几个箱?
(2)使用等宽划分时,将其划分为四个箱,16 在第几个箱?
(3)利用等深分箱法,将其划分为 3 个箱,平均值平滑法进行平滑处理,第
2 个箱的取值为多少?
(4)利用等宽分箱法,将其划分为 3 个箱,边界平滑法进行平滑处理,第 2
个箱内数据值为多少?
取鸢尾花数据集(http://www.ics.uci.edu/~mlearn/MLRepository.html),利用
pyspark 中的 Bucketizer 函数,对四个数值型属性分别进行数据离散化。
为了调查某个微信小程序受众人群分布情况,可采用哪些抽样方法?哪种方
法效果更好?请分析原因。
给定 m 个元素的集合,这些元素划分成了 k 组,其中第 i 组的大小为 。如
相关文档
最新文档