,Exam Blueprint & Instructions
WGU D599 Task 3: Market Basket Analysis | Complete Report, Apriori Algorithm, Python Code & Association Rules
Part I · Exam Questions (1-200)
1. Market Basket Analysis Fundamentals & Use Cases (22 q) ....5
2. Apriori Algorithm, Support, Confidence & Lift (23 q) ....6
3. Data Preprocessing: Transaction Encoding & One-Hot (22 q) ....7
4. Python Implementation: mlxtend & efficient_apriori (22 q) ....8
5. Association Rules Generation & Filtering (22 q) ....9
6. Model Evaluation: Metrics, Threshold Tuning & Pruning (22 q) . . . . 10
7. WGU D599 Task 3 Report Requirements & Documentation (22 q) . . . . 11
8. Visualization: Network Graphs & Rule Scatter Plots (22 q) . . . . 12
9. Business Implications, Limitations & Recommendations (23 q) . . . . 13
Instructions:
• 200 original questions for WGU D599 Task 3 mastery.
• Covers market basket analysis, Apriori, support/confidence/lift, association rules.
• Python uses mlxtend, TransactionEncoder, apriori, association_rules per WGU standards.
• Correct answers and rationales follow each item immediately.
• Original study material, not actual WGU assessment.
,SECTION ONE: QUESTIONS 1-200
Choose the single best answer. Correct answers and rationales follow each item.
Market Basket Analysis Fundamentals & Use Cases
Question 1. In WGU D599 Task 3, what is the correct approach for explaining difference
between Apriori and FP-Growth for frequent itemset mining efficiency?
A. Encode transactions without one-hot encoding and pass raw lists directly to apriori causing
errors
B. Set min_support to 0.9 causing zero frequent itemsets and failing to generate any
association rules
C. Calculate lift incorrectly as support/confidence and ignore support threshold, leading to
spurious rules
D. from mlxtend.frequent_patterns import apriori, association_rules; frequent_itemsets =
apriori(df, min_support=0.02, use_colnames=True)
CORRECT ANSWER: D. from mlxtend.frequent_patterns import apriori, association_rules;
frequent_itemsets = apriori(df, min_support=0.02, use_colnames=True)
RATIONALE: For WGU D599 Task 3 market basket analysis, explaining difference between Apriori and FP-
Growth for frequent itemset mining efficiency requires correct methodology. Correct (D): from
mlxtend.frequent_patterns import apriori, association_rules; frequent_itemsets = apriori(df,
min_support=0.02, use_colnames=True). This satisfies Apriori theory (anti-monotone property), WGU
rubric (Python code, association rules, business report), and avoids common errors. Incorrect
options produce empty results, leakage, or rubric failure.
Question 2. When implementing evaluating business value of rule {bread} -> {butter} with
support 0.05 and lift 2.5 in Python, which code avoids errors?
A. Calculate lift incorrectly as support/confidence and ignore support threshold, leading to
spurious rules
B. Encode transactions without one-hot encoding and pass raw lists directly to apriori causing
errors
C. Set min_support based on business need (e.g., 0.02 = appears in 2% transactions) to prune
infrequent itemsets, balancing coverage vs noise
D. Set min_support to 0.9 causing zero frequent itemsets and failing to generate any
association rules
CORRECT ANSWER: C. Set min_support based on business need (e.g., 0.02 = appears in 2%
transactions) to prune infrequent itemsets, balancing coverage vs noise
RATIONALE: For WGU D599 Task 3 market basket analysis, evaluating business value of rule {bread} ->
{butter} with support 0.05 and lift 2.5 requires correct methodology. Correct (C): Set min_support
based on business need (e.g., 0.02 = appears in 2% transactions) to prune infrequent itemsets,
balancing coverage vs noise. This satisfies Apriori theory (anti-monotone property), WGU rubric
(Python code, association rules, business report), and avoids common errors. Incorrect options
produce empty results, leakage, or rubric failure.
Question 3. A student observes using TransactionEncoder from mlxtend.preprocessing to
convert transaction lists to one-hot DataFrame with low lift. What does it mean?
A. Omit documentation of thresholds, code, and business limitations from WGU D599 report
B. Set min_support to 0.9 causing zero frequent itemsets and failing to generate any
association rules
, C. Calculate lift incorrectly as support/confidence and ignore support threshold, leading to
spurious rules
D. Use TransactionEncoder().fit_transform(transactions) to create boolean DataFrame, then
pd.DataFrame with columns=te.columns_ for mlxtend apriori
CORRECT ANSWER: D. Use TransactionEncoder().fit_transform(transactions) to create boolean
DataFrame, then pd.DataFrame with columns=te.columns_ for mlxtend apriori
RATIONALE: For WGU D599 Task 3 market basket analysis, using TransactionEncoder from
mlxtend.preprocessing to convert transaction lists to one-hot DataFrame requires correct
methodology. Correct (D): Use TransactionEncoder().fit_transform(transactions) to create boolean
DataFrame, then pd.DataFrame with columns=te.columns_ for mlxtend apriori. This satisfies Apriori
theory (anti-monotone property), WGU rubric (Python code, association rules, business report), and
avoids common errors. Incorrect options produce empty results, leakage, or rubric failure.
Question 4. Which Python snippet correctly implements handling large transaction datasets
with efficient memory usage and sparse representation?
A. Omit documentation of thresholds, code, and business limitations from WGU D599 report
B. Correct D599 methodology: handling large transaction datasets with efficient memory usage
and sparse with Python modeling, threshold justification, and rubric-compliant business report
C. Set min_support to 0.9 causing zero frequent itemsets and failing to generate any
association rules
D. Calculate lift incorrectly as support/confidence and ignore support threshold, leading to
spurious rules
CORRECT ANSWER: B. Correct D599 methodology: handling large transaction datasets with
efficient memory usage and sparse with Python modeling, threshold justification, and
rubric-compliant business report
RATIONALE: For WGU D599 Task 3 market basket analysis, handling large transaction datasets with
efficient memory usage and sparse representation requires correct methodology. Correct (B): Correct
D599 methodology: handling large transaction datasets with efficient memory usage and sparse with
Python modeling, threshold justification, and rubric-compliant business report. This satisfies
Apriori theory (anti-monotone property), WGU rubric (Python code, association rules, business
report), and avoids common errors. Incorrect options produce empty results, leakage, or rubric
failure.
Question 5. What is the primary purpose of generating association_rules with
metric='confidence', min_threshold=0.6 for D599 report in market basket analysis?
A. Set min_support to 0.9 causing zero frequent itemsets and failing to generate any
association rules
B. Calculate confidence = support(X∪Y)/support(X) and lift = confidence/support(Y); lift >1
indicates positive association, use for WGU report
C. Omit documentation of thresholds, code, and business limitations from WGU D599 report
D. Calculate lift incorrectly as support/confidence and ignore support threshold, leading to
spurious rules
CORRECT ANSWER: B. Calculate confidence = support(X∪Y)/support(X) and lift =
confidence/support(Y); lift >1 indicates positive association, use for WGU report
RATIONALE: For WGU D599 Task 3 market basket analysis, generating association_rules with
metric='confidence', min_threshold=0.6 for D599 report requires correct methodology. Correct (B):
Calculate confidence = support(X∪Y)/support(X) and lift = confidence/support(Y); lift >1 indicates
positive association, use for WGU report. This satisfies Apriori theory (anti-monotone property),
WGU rubric (Python code, association rules, business report), and avoids common errors. Incorrect
options produce empty results, leakage, or rubric failure.
WGU D599 Task 3: Market Basket Analysis | Complete Report, Apriori Algorithm, Python Code & Association Rules
Part I · Exam Questions (1-200)
1. Market Basket Analysis Fundamentals & Use Cases (22 q) ....5
2. Apriori Algorithm, Support, Confidence & Lift (23 q) ....6
3. Data Preprocessing: Transaction Encoding & One-Hot (22 q) ....7
4. Python Implementation: mlxtend & efficient_apriori (22 q) ....8
5. Association Rules Generation & Filtering (22 q) ....9
6. Model Evaluation: Metrics, Threshold Tuning & Pruning (22 q) . . . . 10
7. WGU D599 Task 3 Report Requirements & Documentation (22 q) . . . . 11
8. Visualization: Network Graphs & Rule Scatter Plots (22 q) . . . . 12
9. Business Implications, Limitations & Recommendations (23 q) . . . . 13
Instructions:
• 200 original questions for WGU D599 Task 3 mastery.
• Covers market basket analysis, Apriori, support/confidence/lift, association rules.
• Python uses mlxtend, TransactionEncoder, apriori, association_rules per WGU standards.
• Correct answers and rationales follow each item immediately.
• Original study material, not actual WGU assessment.
,SECTION ONE: QUESTIONS 1-200
Choose the single best answer. Correct answers and rationales follow each item.
Market Basket Analysis Fundamentals & Use Cases
Question 1. In WGU D599 Task 3, what is the correct approach for explaining difference
between Apriori and FP-Growth for frequent itemset mining efficiency?
A. Encode transactions without one-hot encoding and pass raw lists directly to apriori causing
errors
B. Set min_support to 0.9 causing zero frequent itemsets and failing to generate any
association rules
C. Calculate lift incorrectly as support/confidence and ignore support threshold, leading to
spurious rules
D. from mlxtend.frequent_patterns import apriori, association_rules; frequent_itemsets =
apriori(df, min_support=0.02, use_colnames=True)
CORRECT ANSWER: D. from mlxtend.frequent_patterns import apriori, association_rules;
frequent_itemsets = apriori(df, min_support=0.02, use_colnames=True)
RATIONALE: For WGU D599 Task 3 market basket analysis, explaining difference between Apriori and FP-
Growth for frequent itemset mining efficiency requires correct methodology. Correct (D): from
mlxtend.frequent_patterns import apriori, association_rules; frequent_itemsets = apriori(df,
min_support=0.02, use_colnames=True). This satisfies Apriori theory (anti-monotone property), WGU
rubric (Python code, association rules, business report), and avoids common errors. Incorrect
options produce empty results, leakage, or rubric failure.
Question 2. When implementing evaluating business value of rule {bread} -> {butter} with
support 0.05 and lift 2.5 in Python, which code avoids errors?
A. Calculate lift incorrectly as support/confidence and ignore support threshold, leading to
spurious rules
B. Encode transactions without one-hot encoding and pass raw lists directly to apriori causing
errors
C. Set min_support based on business need (e.g., 0.02 = appears in 2% transactions) to prune
infrequent itemsets, balancing coverage vs noise
D. Set min_support to 0.9 causing zero frequent itemsets and failing to generate any
association rules
CORRECT ANSWER: C. Set min_support based on business need (e.g., 0.02 = appears in 2%
transactions) to prune infrequent itemsets, balancing coverage vs noise
RATIONALE: For WGU D599 Task 3 market basket analysis, evaluating business value of rule {bread} ->
{butter} with support 0.05 and lift 2.5 requires correct methodology. Correct (C): Set min_support
based on business need (e.g., 0.02 = appears in 2% transactions) to prune infrequent itemsets,
balancing coverage vs noise. This satisfies Apriori theory (anti-monotone property), WGU rubric
(Python code, association rules, business report), and avoids common errors. Incorrect options
produce empty results, leakage, or rubric failure.
Question 3. A student observes using TransactionEncoder from mlxtend.preprocessing to
convert transaction lists to one-hot DataFrame with low lift. What does it mean?
A. Omit documentation of thresholds, code, and business limitations from WGU D599 report
B. Set min_support to 0.9 causing zero frequent itemsets and failing to generate any
association rules
, C. Calculate lift incorrectly as support/confidence and ignore support threshold, leading to
spurious rules
D. Use TransactionEncoder().fit_transform(transactions) to create boolean DataFrame, then
pd.DataFrame with columns=te.columns_ for mlxtend apriori
CORRECT ANSWER: D. Use TransactionEncoder().fit_transform(transactions) to create boolean
DataFrame, then pd.DataFrame with columns=te.columns_ for mlxtend apriori
RATIONALE: For WGU D599 Task 3 market basket analysis, using TransactionEncoder from
mlxtend.preprocessing to convert transaction lists to one-hot DataFrame requires correct
methodology. Correct (D): Use TransactionEncoder().fit_transform(transactions) to create boolean
DataFrame, then pd.DataFrame with columns=te.columns_ for mlxtend apriori. This satisfies Apriori
theory (anti-monotone property), WGU rubric (Python code, association rules, business report), and
avoids common errors. Incorrect options produce empty results, leakage, or rubric failure.
Question 4. Which Python snippet correctly implements handling large transaction datasets
with efficient memory usage and sparse representation?
A. Omit documentation of thresholds, code, and business limitations from WGU D599 report
B. Correct D599 methodology: handling large transaction datasets with efficient memory usage
and sparse with Python modeling, threshold justification, and rubric-compliant business report
C. Set min_support to 0.9 causing zero frequent itemsets and failing to generate any
association rules
D. Calculate lift incorrectly as support/confidence and ignore support threshold, leading to
spurious rules
CORRECT ANSWER: B. Correct D599 methodology: handling large transaction datasets with
efficient memory usage and sparse with Python modeling, threshold justification, and
rubric-compliant business report
RATIONALE: For WGU D599 Task 3 market basket analysis, handling large transaction datasets with
efficient memory usage and sparse representation requires correct methodology. Correct (B): Correct
D599 methodology: handling large transaction datasets with efficient memory usage and sparse with
Python modeling, threshold justification, and rubric-compliant business report. This satisfies
Apriori theory (anti-monotone property), WGU rubric (Python code, association rules, business
report), and avoids common errors. Incorrect options produce empty results, leakage, or rubric
failure.
Question 5. What is the primary purpose of generating association_rules with
metric='confidence', min_threshold=0.6 for D599 report in market basket analysis?
A. Set min_support to 0.9 causing zero frequent itemsets and failing to generate any
association rules
B. Calculate confidence = support(X∪Y)/support(X) and lift = confidence/support(Y); lift >1
indicates positive association, use for WGU report
C. Omit documentation of thresholds, code, and business limitations from WGU D599 report
D. Calculate lift incorrectly as support/confidence and ignore support threshold, leading to
spurious rules
CORRECT ANSWER: B. Calculate confidence = support(X∪Y)/support(X) and lift =
confidence/support(Y); lift >1 indicates positive association, use for WGU report
RATIONALE: For WGU D599 Task 3 market basket analysis, generating association_rules with
metric='confidence', min_threshold=0.6 for D599 report requires correct methodology. Correct (B):
Calculate confidence = support(X∪Y)/support(X) and lift = confidence/support(Y); lift >1 indicates
positive association, use for WGU report. This satisfies Apriori theory (anti-monotone property),
WGU rubric (Python code, association rules, business report), and avoids common errors. Incorrect
options produce empty results, leakage, or rubric failure.