說明:
用於挖掘頻繁項集的並行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。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。