说明:
用于挖掘频繁项集的并行FP-growth算法。 spark.fpGrowth
适合 SparkDataFrame 上的 FP-growth 模型。用户可以通过spark.freqItemsets
获取频繁项集,spark.associationRules
获取关联规则,predict
根据生成的关联规则对新数据进行预测,write.ml
/read.ml
保存/加载拟合模型。有关详细信息,请参阅 FP-growth 。
用法:
spark.fpGrowth(data, ...)
spark.freqItemsets(object)
spark.associationRules(object)
## S4 method for signature 'SparkDataFrame'
spark.fpGrowth(
data,
minSupport = 0.3,
minConfidence = 0.8,
itemsCol = "items",
numPartitions = NULL
)
## S4 method for signature 'FPGrowthModel'
spark.freqItemsets(object)
## S4 method for signature 'FPGrowthModel'
spark.associationRules(object)
## S4 method for signature 'FPGrowthModel'
predict(object, newData)
## S4 method for signature 'FPGrowthModel,character'
write.ml(object, path, overwrite = FALSE)
参数:
data
用于训练的 SparkDataFrame。...
传递给方法的附加参数。object
拟合的 FPGrowth 模型。minSupport
最低支持水平。minConfidence
最小置信水平。itemsCol
特征列名。numPartitions
用于拟合的分区数。newData
用于测试的 SparkDataFrame。path
保存模型的目录。overwrite
如果输出路径已经存在,是否覆盖的逻辑值。默认为 FALSE,这意味着如果输出路径存在则抛出异常。
返回:
spark.fpGrowth
返回一个拟合的 FPGrowth 模型。
带有频繁项集的SparkDataFrame
。 SparkDataFrame
包含两列:items
(与输入列类型相同的数组)和freq
(项目集的频率)。
带有关联规则的SparkDataFrame
。 SparkDataFrame
包含五列:antecedent
(与输入列类型相同的数组)、consequent
(与输入列类型相同的数组)、confidence
(对规则的置信度)lift
(提升规则)和support
(支持规则)
predict
返回包含预测值的 SparkDataFrame。
注意:
spark.fpGrowth 自 2.2.0
spark.freqItemsets(FPGrowthModel) 自 2.2.0
spark.associationRules(FPGrowthModel) 自 2.2.0
从 2.2.0 开始预测(FPGrowthModel)
write.ml(FPGrowthModel, character) 自 2.2.0 起
例子:
raw_data <- read.df(
"data/mllib/sample_fpgrowth.txt",
source = "csv",
schema = structType(structField("raw_items", "string")))
data <- selectExpr(raw_data, "split(raw_items, ' ') as items")
model <- spark.fpGrowth(data)
# Show frequent itemsets
frequent_itemsets <- spark.freqItemsets(model)
showDF(frequent_itemsets)
# Show association rules
association_rules <- spark.associationRules(model)
showDF(association_rules)
# Predict on new data
new_itemsets <- data.frame(items = c("t", "t,s"))
new_data <- selectExpr(createDataFrame(new_itemsets), "split(items, ',') as items")
predict(model, new_data)
# Save and load model
path <- "/path/to/model"
write.ml(model, path)
read.ml(path)
# Optional arguments
baskets_data <- selectExpr(createDataFrame(itemsets), "split(items, ',') as baskets")
another_model <- spark.fpGrowth(data, minSupport = 0.1, minConfidence = 0.5,
itemsCol = "baskets", numPartitions = 10)
相关用法
- R SparkR spark.fmClassifier用法及代码示例
- R SparkR spark.fmRegressor用法及代码示例
- R SparkR spark.decisionTree用法及代码示例
- R SparkR spark.powerIterationClustering用法及代码示例
- R SparkR spark.svmLinear用法及代码示例
- R SparkR spark.gaussianMixture用法及代码示例
- R SparkR spark.naiveBayes用法及代码示例
- R SparkR spark.getSparkFiles用法及代码示例
- R SparkR spark.survreg用法及代码示例
- R SparkR spark.lm用法及代码示例
- R SparkR spark.mlp用法及代码示例
- R SparkR spark.gbt用法及代码示例
- R SparkR spark.getSparkFilesRootDirectory用法及代码示例
- R SparkR spark.logit用法及代码示例
- R SparkR spark.addFile用法及代码示例
- R SparkR spark.isoreg用法及代码示例
- R SparkR spark.als用法及代码示例
- R SparkR spark.glm用法及代码示例
- R SparkR spark.lapply用法及代码示例
- R SparkR spark.kmeans用法及代码示例
注:本文由纯净天空筛选整理自spark.apache.org大神的英文原创作品 FP-growth。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。