11. Create Calendar Window Aggregates from Time Series
Creating Features with Monthly Calendar Windows¶
In this step, we define by aggregating monthly records from the CREDIT_CARD_MONTHLY_BALANCE and INSTALLMENTS_PAYMENTS tables within 6-month, 12-month and 24-month calendar windows.
Calendar aggregations windows are required for Time Series while for event table they are recommended only when the event is a monthly regular event and the feature job setting is a CRON setting.
Activate catalog¶
In [1]:
Copied!
import featurebyte as fb
# Set your profile to the tutorial environment
fb.use_profile("tutorial")
catalog_name = "Loan Applications Dataset SDK Tutorial"
catalog = fb.Catalog.activate(catalog_name)
import featurebyte as fb
# Set your profile to the tutorial environment
fb.use_profile("tutorial")
catalog_name = "Loan Applications Dataset SDK Tutorial"
catalog = fb.Catalog.activate(catalog_name)
14:10:28 | INFO | SDK version: 3.0.1.dev45 INFO :featurebyte:SDK version: 3.0.1.dev45 14:10:28 | INFO | No catalog activated. INFO :featurebyte:No catalog activated. 14:10:28 | INFO | Using profile: tutorial INFO :featurebyte:Using profile: tutorial 14:10:29 | INFO | Using configuration file at: /Users/gxav/.featurebyte/config.yaml INFO :featurebyte:Using configuration file at: /Users/gxav/.featurebyte/config.yaml 14:10:29 | INFO | Active profile: tutorial (https://tutorials.featurebyte.com/api/v1) INFO :featurebyte:Active profile: tutorial (https://tutorials.featurebyte.com/api/v1) 14:10:29 | INFO | SDK version: 3.0.1.dev45 INFO :featurebyte:SDK version: 3.0.1.dev45 14:10:29 | INFO | No catalog activated. INFO :featurebyte:No catalog activated. 14:10:29 | INFO | Catalog activated: Loan Applications Dataset SDK Tutorial INFO :featurebyte.api.catalog:Catalog activated: Loan Applications Dataset SDK Tutorial
Get view from table¶
In [2]:
Copied!
# Get view from CREDIT_CARD_MONTHLY_BALANCE time series table.
credit_card_monthly_balance_view = catalog.get_view("CREDIT_CARD_MONTHLY_BALANCE")
# Get view from CREDIT_CARD_MONTHLY_BALANCE time series table.
credit_card_monthly_balance_view = catalog.get_view("CREDIT_CARD_MONTHLY_BALANCE")
In [3]:
Copied!
# Get view from INSTALLMENTS_PAYMENTS event table.
installments_payments_view = catalog.get_view("INSTALLMENTS_PAYMENTS")
# Get view from INSTALLMENTS_PAYMENTS event table.
installments_payments_view = catalog.get_view("INSTALLMENTS_PAYMENTS")
In [4]:
Copied!
# Get view from PREVIOUS_APPLICATION event table.
previous_application_view = catalog.get_view("PREVIOUS_APPLICATION")
# Get view from PREVIOUS_APPLICATION event table.
previous_application_view = catalog.get_view("PREVIOUS_APPLICATION")
Create ratio column¶
In [5]:
Copied!
previous_application_view["AMT_ANNUITY To AMT_CREDIT"] = (
previous_application_view["AMT_ANNUITY"] / previous_application_view["AMT_CREDIT"]
)
previous_application_view["AMT_ANNUITY To AMT_CREDIT"] = (
previous_application_view["AMT_ANNUITY"] / previous_application_view["AMT_CREDIT"]
)
Derive new column¶
In [6]:
Copied!
credit_card_monthly_balance_view["Available Credit"] = (
credit_card_monthly_balance_view["AMT_CREDIT_LIMIT_ACTUAL"] - credit_card_monthly_balance_view["AMT_BALANCE"]
)
credit_card_monthly_balance_view["Available Credit"] = (
credit_card_monthly_balance_view["AMT_CREDIT_LIMIT_ACTUAL"] - credit_card_monthly_balance_view["AMT_BALANCE"]
)
In [7]:
Copied!
installments_payments_view["Days_Difference_Actual_vs_Scheduled"] = (
installments_payments_view["actual_installment_date"] - installments_payments_view["scheduled_installment_date"]
).dt.day
installments_payments_view["Days_Difference_Actual_vs_Scheduled"] = (
installments_payments_view["actual_installment_date"] - installments_payments_view["scheduled_installment_date"]
).dt.day
Join views¶
In [8]:
Copied!
# Join PREVIOUS_APPLICATION view to INSTALLMENTS_PAYMENTS view.
installments_payments_view = installments_payments_view.join(previous_application_view, rprefix="PriorApplication_")
# Join PREVIOUS_APPLICATION view to INSTALLMENTS_PAYMENTS view.
installments_payments_view = installments_payments_view.join(previous_application_view, rprefix="PriorApplication_")
Do window aggregation from CREDIT_CARD_MONTHLY_BALANCE¶
See SDK reference for features
See SDK reference to groupby a view
See SDK reference to do aggregation over time
In [9]:
Copied!
# Group CREDIT_CARD_MONTHLY_BALANCE view by Client entity (ClientID).
credit_card_monthly_balance_view_by_client = credit_card_monthly_balance_view.groupby(["ClientID"])
# Group CREDIT_CARD_MONTHLY_BALANCE view by Client entity (ClientID).
credit_card_monthly_balance_view_by_client = credit_card_monthly_balance_view.groupby(["ClientID"])
In [10]:
Copied!
# Get Std of CNT_DRAWINGS_CURRENT for the Client over time.
client_std_of_credit_card_monthly_balance_records_cnt_drawings_atm_currents_24cmo = (
credit_card_monthly_balance_view_by_client.aggregate_over(
"CNT_DRAWINGS_ATM_CURRENT",
method="std",
feature_names=["CLIENT_Std_of_Credit_card_monthly_balance_records_CNT_DRAWINGS_ATM_CURRENTs_24cMo"],
windows=[fb.CalendarWindow(unit="MONTH", size=24)],
)["CLIENT_Std_of_Credit_card_monthly_balance_records_CNT_DRAWINGS_ATM_CURRENTs_24cMo"]
)
# Get Std of CNT_DRAWINGS_CURRENT for the Client over time.
client_std_of_credit_card_monthly_balance_records_cnt_drawings_atm_currents_24cmo = (
credit_card_monthly_balance_view_by_client.aggregate_over(
"CNT_DRAWINGS_ATM_CURRENT",
method="std",
feature_names=["CLIENT_Std_of_Credit_card_monthly_balance_records_CNT_DRAWINGS_ATM_CURRENTs_24cMo"],
windows=[fb.CalendarWindow(unit="MONTH", size=24)],
)["CLIENT_Std_of_Credit_card_monthly_balance_records_CNT_DRAWINGS_ATM_CURRENTs_24cMo"]
)
In [11]:
Copied!
# Get Min of Available Credit for the Client over time.
client_min_of_credit_card_monthly_balance_records_available_credits_6cmo = (
credit_card_monthly_balance_view_by_client.aggregate_over(
"Available Credit",
method="min",
feature_names=["CLIENT_Min_of_Credit_card_monthly_balance_records_Available_Credits_6cMo"],
windows=[fb.CalendarWindow(unit="MONTH", size=6)],
)["CLIENT_Min_of_Credit_card_monthly_balance_records_Available_Credits_6cMo"]
)
# Get Min of Available Credit for the Client over time.
client_min_of_credit_card_monthly_balance_records_available_credits_6cmo = (
credit_card_monthly_balance_view_by_client.aggregate_over(
"Available Credit",
method="min",
feature_names=["CLIENT_Min_of_Credit_card_monthly_balance_records_Available_Credits_6cMo"],
windows=[fb.CalendarWindow(unit="MONTH", size=6)],
)["CLIENT_Min_of_Credit_card_monthly_balance_records_Available_Credits_6cMo"]
)
Do window aggregation from INSTALLMENTS_PAYMENTS¶
See SDK reference for features
See SDK reference to groupby a view
See SDK reference to do aggregation over time
In [12]:
Copied!
# Group INSTALLMENTS_PAYMENTS view by Client entity (PriorApplication_ClientID).
installments_payments_view_by_client = installments_payments_view.groupby(["PriorApplication_ClientID"])
# Group INSTALLMENTS_PAYMENTS view by Client entity (PriorApplication_ClientID).
installments_payments_view_by_client = installments_payments_view.groupby(["PriorApplication_ClientID"])
In [13]:
Copied!
# Get Min of AMT_PAYMENT for the Client over time.
client_min_of_installments_amt_payments_24cmo = installments_payments_view_by_client.aggregate_over(
"AMT_PAYMENT",
method="min",
feature_names=["CLIENT_Min_of_Installments_AMT_PAYMENTs_24cMo"],
windows=[fb.CalendarWindow(unit="MONTH", size=24)],
)["CLIENT_Min_of_Installments_AMT_PAYMENTs_24cMo"]
# Get Min of AMT_PAYMENT for the Client over time.
client_min_of_installments_amt_payments_24cmo = installments_payments_view_by_client.aggregate_over(
"AMT_PAYMENT",
method="min",
feature_names=["CLIENT_Min_of_Installments_AMT_PAYMENTs_24cMo"],
windows=[fb.CalendarWindow(unit="MONTH", size=24)],
)["CLIENT_Min_of_Installments_AMT_PAYMENTs_24cMo"]
In [14]:
Copied!
# Get Max of Days_Difference_Actual_vs_Scheduled for the Client over time.
client_max_of_installments_days_difference_actual_vs_scheduleds_24cmo = (
installments_payments_view_by_client.aggregate_over(
"Days_Difference_Actual_vs_Scheduled",
method="max",
feature_names=["CLIENT_Max_of_Installments_Days_Difference_Actual_vs_Scheduleds_24cMo"],
windows=[fb.CalendarWindow(unit="MONTH", size=24)],
)["CLIENT_Max_of_Installments_Days_Difference_Actual_vs_Scheduleds_24cMo"]
)
# Get Max of Days_Difference_Actual_vs_Scheduled for the Client over time.
client_max_of_installments_days_difference_actual_vs_scheduleds_24cmo = (
installments_payments_view_by_client.aggregate_over(
"Days_Difference_Actual_vs_Scheduled",
method="max",
feature_names=["CLIENT_Max_of_Installments_Days_Difference_Actual_vs_Scheduleds_24cMo"],
windows=[fb.CalendarWindow(unit="MONTH", size=24)],
)["CLIENT_Max_of_Installments_Days_Difference_Actual_vs_Scheduleds_24cMo"]
)
In [15]:
Copied!
# Get Max of PriorApplication_AMT_ANNUITY To AMT_CREDIT for the Client over time.
client_max_of_installments_priorapplication_amt_annuity_to_amt_credits_6cmo = (
installments_payments_view_by_client.aggregate_over(
"PriorApplication_AMT_ANNUITY To AMT_CREDIT",
method="max",
feature_names=["CLIENT_Max_of_Installments_PriorApplication_AMT_ANNUITY_To_AMT_CREDITs_6cMo"],
windows=[fb.CalendarWindow(unit="MONTH", size=6)],
)["CLIENT_Max_of_Installments_PriorApplication_AMT_ANNUITY_To_AMT_CREDITs_6cMo"]
)
# Get Max of PriorApplication_AMT_ANNUITY To AMT_CREDIT for the Client over time.
client_max_of_installments_priorapplication_amt_annuity_to_amt_credits_6cmo = (
installments_payments_view_by_client.aggregate_over(
"PriorApplication_AMT_ANNUITY To AMT_CREDIT",
method="max",
feature_names=["CLIENT_Max_of_Installments_PriorApplication_AMT_ANNUITY_To_AMT_CREDITs_6cMo"],
windows=[fb.CalendarWindow(unit="MONTH", size=6)],
)["CLIENT_Max_of_Installments_PriorApplication_AMT_ANNUITY_To_AMT_CREDITs_6cMo"]
)
In [16]:
Copied!
# Group INSTALLMENTS_PAYMENTS view by Client entity (PriorApplication_ClientID) across different
# INSTALLMENT_STATUSs.
installments_payments_view_by_client_across_installment_statuss = installments_payments_view.groupby(
["PriorApplication_ClientID"], category="INSTALLMENT_STATUS"
)
# Group INSTALLMENTS_PAYMENTS view by Client entity (PriorApplication_ClientID) across different
# INSTALLMENT_STATUSs.
installments_payments_view_by_client_across_installment_statuss = installments_payments_view.groupby(
["PriorApplication_ClientID"], category="INSTALLMENT_STATUS"
)
In [17]:
Copied!
# Distribution of the total AMT_PAYMENTs of Installments, segmented by INSTALLMENT_STATUS for the
# Client over time.
client_installments_amt_payments_by_installment_status_6cmo = (
installments_payments_view_by_client_across_installment_statuss.aggregate_over(
"AMT_PAYMENT",
method="sum",
feature_names=["CLIENT_Installments_AMT_PAYMENTs_by_INSTALLMENT_STATUS_6cMo"],
windows=[fb.CalendarWindow(unit="MONTH", size=6)],
)["CLIENT_Installments_AMT_PAYMENTs_by_INSTALLMENT_STATUS_6cMo"]
)
# Distribution of the total AMT_PAYMENTs of Installments, segmented by INSTALLMENT_STATUS for the
# Client over time.
client_installments_amt_payments_by_installment_status_6cmo = (
installments_payments_view_by_client_across_installment_statuss.aggregate_over(
"AMT_PAYMENT",
method="sum",
feature_names=["CLIENT_Installments_AMT_PAYMENTs_by_INSTALLMENT_STATUS_6cMo"],
windows=[fb.CalendarWindow(unit="MONTH", size=6)],
)["CLIENT_Installments_AMT_PAYMENTs_by_INSTALLMENT_STATUS_6cMo"]
)
In [18]:
Copied!
# Distribution of the total AMT_PAYMENTs of Installments, segmented by INSTALLMENT_STATUS for the
# Client over time.
client_installments_amt_payments_by_installment_status_12cmo = (
installments_payments_view_by_client_across_installment_statuss.aggregate_over(
"AMT_PAYMENT",
method="sum",
feature_names=["CLIENT_Installments_AMT_PAYMENTs_by_INSTALLMENT_STATUS_12cMo"],
windows=[fb.CalendarWindow(unit="MONTH", size=12)],
)["CLIENT_Installments_AMT_PAYMENTs_by_INSTALLMENT_STATUS_12cMo"]
)
# Distribution of the total AMT_PAYMENTs of Installments, segmented by INSTALLMENT_STATUS for the
# Client over time.
client_installments_amt_payments_by_installment_status_12cmo = (
installments_payments_view_by_client_across_installment_statuss.aggregate_over(
"AMT_PAYMENT",
method="sum",
feature_names=["CLIENT_Installments_AMT_PAYMENTs_by_INSTALLMENT_STATUS_12cMo"],
windows=[fb.CalendarWindow(unit="MONTH", size=12)],
)["CLIENT_Installments_AMT_PAYMENTs_by_INSTALLMENT_STATUS_12cMo"]
)
In [19]:
Copied!
# Count Installments across different INSTALLMENT_STATUSs for the Client over time.
client_count_of_installments_by_installment_status_24cmo = (
installments_payments_view_by_client_across_installment_statuss.aggregate_over(
None,
method="count",
feature_names=["CLIENT_Count_of_Installments_by_INSTALLMENT_STATUS_24cMo"],
windows=[fb.CalendarWindow(unit="MONTH", size=24)],
)["CLIENT_Count_of_Installments_by_INSTALLMENT_STATUS_24cMo"]
)
# Count Installments across different INSTALLMENT_STATUSs for the Client over time.
client_count_of_installments_by_installment_status_24cmo = (
installments_payments_view_by_client_across_installment_statuss.aggregate_over(
None,
method="count",
feature_names=["CLIENT_Count_of_Installments_by_INSTALLMENT_STATUS_24cMo"],
windows=[fb.CalendarWindow(unit="MONTH", size=24)],
)["CLIENT_Count_of_Installments_by_INSTALLMENT_STATUS_24cMo"]
)
In [20]:
Copied!
# Group INSTALLMENTS_PAYMENTS view by Client entity (PriorApplication_ClientID) across different
# PriorApplication_PAYMENT_TYPEs.
installments_payments_view_by_client_across_priorapplication_payment_types = installments_payments_view.groupby(
["PriorApplication_ClientID"], category="PriorApplication_PAYMENT_TYPE"
)
# Group INSTALLMENTS_PAYMENTS view by Client entity (PriorApplication_ClientID) across different
# PriorApplication_PAYMENT_TYPEs.
installments_payments_view_by_client_across_priorapplication_payment_types = installments_payments_view.groupby(
["PriorApplication_ClientID"], category="PriorApplication_PAYMENT_TYPE"
)
In [21]:
Copied!
# Distribution of the total AMT_PAYMENTs of Installments, segmented by
# PriorApplication_PAYMENT_TYPE for the Client over time.
client_installments_amt_payments_by_priorapplication_payment_type_24cmo = (
installments_payments_view_by_client_across_priorapplication_payment_types.aggregate_over(
"AMT_PAYMENT",
method="sum",
feature_names=["CLIENT_Installments_AMT_PAYMENTs_by_PriorApplication_PAYMENT_TYPE_24cMo"],
windows=[fb.CalendarWindow(unit="MONTH", size=24)],
)["CLIENT_Installments_AMT_PAYMENTs_by_PriorApplication_PAYMENT_TYPE_24cMo"]
)
# Distribution of the total AMT_PAYMENTs of Installments, segmented by
# PriorApplication_PAYMENT_TYPE for the Client over time.
client_installments_amt_payments_by_priorapplication_payment_type_24cmo = (
installments_payments_view_by_client_across_priorapplication_payment_types.aggregate_over(
"AMT_PAYMENT",
method="sum",
feature_names=["CLIENT_Installments_AMT_PAYMENTs_by_PriorApplication_PAYMENT_TYPE_24cMo"],
windows=[fb.CalendarWindow(unit="MONTH", size=24)],
)["CLIENT_Installments_AMT_PAYMENTs_by_PriorApplication_PAYMENT_TYPE_24cMo"]
)
In [22]:
Copied!
# Group INSTALLMENTS_PAYMENTS view by Client entity (PriorApplication_ClientID) across different
# PriorApplication_CLIENT_TYPEs.
installments_payments_view_by_client_across_priorapplication_client_types = installments_payments_view.groupby(
["PriorApplication_ClientID"], category="PriorApplication_CLIENT_TYPE"
)
# Group INSTALLMENTS_PAYMENTS view by Client entity (PriorApplication_ClientID) across different
# PriorApplication_CLIENT_TYPEs.
installments_payments_view_by_client_across_priorapplication_client_types = installments_payments_view.groupby(
["PriorApplication_ClientID"], category="PriorApplication_CLIENT_TYPE"
)
In [23]:
Copied!
# Distribution of the total AMT_PAYMENTs of Installments, segmented by PriorApplication_CLIENT_TYPE
# for the Client over time.
client_installments_amt_payments_by_priorapplication_client_type_24cmo = (
installments_payments_view_by_client_across_priorapplication_client_types.aggregate_over(
"AMT_PAYMENT",
method="sum",
feature_names=["CLIENT_Installments_AMT_PAYMENTs_by_PriorApplication_CLIENT_TYPE_24cMo"],
windows=[fb.CalendarWindow(unit="MONTH", size=24)],
)["CLIENT_Installments_AMT_PAYMENTs_by_PriorApplication_CLIENT_TYPE_24cMo"]
)
# Distribution of the total AMT_PAYMENTs of Installments, segmented by PriorApplication_CLIENT_TYPE
# for the Client over time.
client_installments_amt_payments_by_priorapplication_client_type_24cmo = (
installments_payments_view_by_client_across_priorapplication_client_types.aggregate_over(
"AMT_PAYMENT",
method="sum",
feature_names=["CLIENT_Installments_AMT_PAYMENTs_by_PriorApplication_CLIENT_TYPE_24cMo"],
windows=[fb.CalendarWindow(unit="MONTH", size=24)],
)["CLIENT_Installments_AMT_PAYMENTs_by_PriorApplication_CLIENT_TYPE_24cMo"]
)
In [24]:
Copied!
# Group INSTALLMENTS_PAYMENTS view by Client entity (PriorApplication_ClientID) across different
# PriorApplication_YIELD_GROUPs.
installments_payments_view_by_client_across_priorapplication_yield_groups = installments_payments_view.groupby(
["PriorApplication_ClientID"], category="PriorApplication_YIELD_GROUP"
)
# Group INSTALLMENTS_PAYMENTS view by Client entity (PriorApplication_ClientID) across different
# PriorApplication_YIELD_GROUPs.
installments_payments_view_by_client_across_priorapplication_yield_groups = installments_payments_view.groupby(
["PriorApplication_ClientID"], category="PriorApplication_YIELD_GROUP"
)
In [25]:
Copied!
# Distribution of the total AMT_PAYMENTs of Installments, segmented by PriorApplication_YIELD_GROUP
# for the Client over time.
client_installments_amt_payments_by_priorapplication_yield_group_24cmo = (
installments_payments_view_by_client_across_priorapplication_yield_groups.aggregate_over(
"AMT_PAYMENT",
method="sum",
feature_names=["CLIENT_Installments_AMT_PAYMENTs_by_PriorApplication_YIELD_GROUP_24cMo"],
windows=[fb.CalendarWindow(unit="MONTH", size=24)],
)["CLIENT_Installments_AMT_PAYMENTs_by_PriorApplication_YIELD_GROUP_24cMo"]
)
# Distribution of the total AMT_PAYMENTs of Installments, segmented by PriorApplication_YIELD_GROUP
# for the Client over time.
client_installments_amt_payments_by_priorapplication_yield_group_24cmo = (
installments_payments_view_by_client_across_priorapplication_yield_groups.aggregate_over(
"AMT_PAYMENT",
method="sum",
feature_names=["CLIENT_Installments_AMT_PAYMENTs_by_PriorApplication_YIELD_GROUP_24cMo"],
windows=[fb.CalendarWindow(unit="MONTH", size=24)],
)["CLIENT_Installments_AMT_PAYMENTs_by_PriorApplication_YIELD_GROUP_24cMo"]
)
Derive feature from aggregation across categories¶
In [26]:
Copied!
# Get Entropy of count of Installments by INSTALLMENT_STATUS from
# CLIENT_Count_of_Installments_by_INSTALLMENT_STATUS_24cMo
client_entropy_of_count_of_installments_by_installment_status_24cmo = (
client_count_of_installments_by_installment_status_24cmo.cd.entropy()
)
# Give a name to new feature
client_entropy_of_count_of_installments_by_installment_status_24cmo.name = (
"CLIENT_Entropy_of_count_of_Installments_by_INSTALLMENT_STATUS_24cMo"
)
# Get Entropy of count of Installments by INSTALLMENT_STATUS from
# CLIENT_Count_of_Installments_by_INSTALLMENT_STATUS_24cMo
client_entropy_of_count_of_installments_by_installment_status_24cmo = (
client_count_of_installments_by_installment_status_24cmo.cd.entropy()
)
# Give a name to new feature
client_entropy_of_count_of_installments_by_installment_status_24cmo.name = (
"CLIENT_Entropy_of_count_of_Installments_by_INSTALLMENT_STATUS_24cMo"
)
In [27]:
Copied!
fb.FeatureGroup(
[
client_std_of_credit_card_monthly_balance_records_cnt_drawings_atm_currents_24cmo,
client_min_of_credit_card_monthly_balance_records_available_credits_6cmo,
client_max_of_installments_priorapplication_amt_annuity_to_amt_credits_6cmo,
client_max_of_installments_days_difference_actual_vs_scheduleds_24cmo,
client_min_of_installments_amt_payments_24cmo,
client_installments_amt_payments_by_priorapplication_yield_group_24cmo,
client_installments_amt_payments_by_priorapplication_payment_type_24cmo,
client_installments_amt_payments_by_priorapplication_client_type_24cmo,
client_installments_amt_payments_by_installment_status_6cmo,
client_installments_amt_payments_by_installment_status_12cmo,
client_entropy_of_count_of_installments_by_installment_status_24cmo,
]
).save()
fb.FeatureGroup(
[
client_std_of_credit_card_monthly_balance_records_cnt_drawings_atm_currents_24cmo,
client_min_of_credit_card_monthly_balance_records_available_credits_6cmo,
client_max_of_installments_priorapplication_amt_annuity_to_amt_credits_6cmo,
client_max_of_installments_days_difference_actual_vs_scheduleds_24cmo,
client_min_of_installments_amt_payments_24cmo,
client_installments_amt_payments_by_priorapplication_yield_group_24cmo,
client_installments_amt_payments_by_priorapplication_payment_type_24cmo,
client_installments_amt_payments_by_priorapplication_client_type_24cmo,
client_installments_amt_payments_by_installment_status_6cmo,
client_installments_amt_payments_by_installment_status_12cmo,
client_entropy_of_count_of_installments_by_installment_status_24cmo,
]
).save()
Done! |████████████████████████████████████████| 100% in 9.1s (0.11%/s) Done! |████████████████████████████████████████| 100% in 6.2s (0.16%/s) Loading Feature(s) |████████████████████████████████████████| 11/11 [100%] in 0.
Update feature type¶
In [28]:
Copied!
# Update feature type
client_std_of_credit_card_monthly_balance_records_cnt_drawings_atm_currents_24cmo.update_feature_type("numeric")
# Update feature type
client_std_of_credit_card_monthly_balance_records_cnt_drawings_atm_currents_24cmo.update_feature_type("numeric")
In [29]:
Copied!
# Update feature type
client_min_of_credit_card_monthly_balance_records_available_credits_6cmo.update_feature_type("numeric")
# Update feature type
client_min_of_credit_card_monthly_balance_records_available_credits_6cmo.update_feature_type("numeric")
In [30]:
Copied!
# Update feature type
client_max_of_installments_priorapplication_amt_annuity_to_amt_credits_6cmo.update_feature_type("numeric")
# Update feature type
client_max_of_installments_priorapplication_amt_annuity_to_amt_credits_6cmo.update_feature_type("numeric")
In [31]:
Copied!
# Update feature type
client_max_of_installments_days_difference_actual_vs_scheduleds_24cmo.update_feature_type("numeric")
# Update feature type
client_max_of_installments_days_difference_actual_vs_scheduleds_24cmo.update_feature_type("numeric")
In [32]:
Copied!
# Update feature type
client_min_of_installments_amt_payments_24cmo.update_feature_type("numeric")
# Update feature type
client_min_of_installments_amt_payments_24cmo.update_feature_type("numeric")
In [33]:
Copied!
# Update feature type
client_installments_amt_payments_by_priorapplication_yield_group_24cmo.update_feature_type("dictionary")
# Update feature type
client_installments_amt_payments_by_priorapplication_yield_group_24cmo.update_feature_type("dictionary")
In [34]:
Copied!
# Update feature type
client_installments_amt_payments_by_priorapplication_payment_type_24cmo.update_feature_type("dictionary")
# Update feature type
client_installments_amt_payments_by_priorapplication_payment_type_24cmo.update_feature_type("dictionary")
In [35]:
Copied!
# Update feature type
client_installments_amt_payments_by_priorapplication_client_type_24cmo.update_feature_type("dictionary")
# Update feature type
client_installments_amt_payments_by_priorapplication_client_type_24cmo.update_feature_type("dictionary")
In [36]:
Copied!
# Update feature type
client_installments_amt_payments_by_installment_status_6cmo.update_feature_type("dictionary")
# Update feature type
client_installments_amt_payments_by_installment_status_6cmo.update_feature_type("dictionary")
In [37]:
Copied!
# Update feature type
client_installments_amt_payments_by_installment_status_12cmo.update_feature_type("dictionary")
# Update feature type
client_installments_amt_payments_by_installment_status_12cmo.update_feature_type("dictionary")
In [38]:
Copied!
# Update feature type
client_entropy_of_count_of_installments_by_installment_status_24cmo.update_feature_type("numeric")
# Update feature type
client_entropy_of_count_of_installments_by_installment_status_24cmo.update_feature_type("numeric")
Add description¶
In [39]:
Copied!
# Add description
client_std_of_credit_card_monthly_balance_records_cnt_drawings_atm_currents_24cmo.update_description(
"Std of Credit_card_monthly_balance_records CNT_DRAWINGS_ATM_CURRENTs for "
"the Client over a 24 calendar months period."
)
# Add description
client_std_of_credit_card_monthly_balance_records_cnt_drawings_atm_currents_24cmo.update_description(
"Std of Credit_card_monthly_balance_records CNT_DRAWINGS_ATM_CURRENTs for "
"the Client over a 24 calendar months period."
)
In [40]:
Copied!
# Add description
client_min_of_credit_card_monthly_balance_records_available_credits_6cmo.update_description(
"Min of Credit_card_monthly_balance_records Available Credits for the " "Client over a 6 calendar months period."
)
# Add description
client_min_of_credit_card_monthly_balance_records_available_credits_6cmo.update_description(
"Min of Credit_card_monthly_balance_records Available Credits for the " "Client over a 6 calendar months period."
)
In [41]:
Copied!
# Add description
client_max_of_installments_priorapplication_amt_annuity_to_amt_credits_6cmo.update_description(
"Max of Installments PriorApplication_AMT_ANNUITY To AMT_CREDITs for the Client over a 6 calendar months period."
)
# Add description
client_max_of_installments_priorapplication_amt_annuity_to_amt_credits_6cmo.update_description(
"Max of Installments PriorApplication_AMT_ANNUITY To AMT_CREDITs for the Client over a 6 calendar months period."
)
In [42]:
Copied!
# Add description
client_max_of_installments_days_difference_actual_vs_scheduleds_24cmo.update_description(
"Max of Installments Days_Difference_Actual_vs_Scheduleds for the Client over a 24 calendar months period."
)
# Add description
client_max_of_installments_days_difference_actual_vs_scheduleds_24cmo.update_description(
"Max of Installments Days_Difference_Actual_vs_Scheduleds for the Client over a 24 calendar months period."
)
In [43]:
Copied!
# Add description
client_min_of_installments_amt_payments_24cmo.update_description(
"Min of Installments AMT_PAYMENTs for the Client over a 24 calendar months period."
)
# Add description
client_min_of_installments_amt_payments_24cmo.update_description(
"Min of Installments AMT_PAYMENTs for the Client over a 24 calendar months period."
)
In [44]:
Copied!
# Add description
client_installments_amt_payments_by_priorapplication_yield_group_24cmo.update_description(
"Distribution of the total AMT_PAYMENTs of Installments, segmented by "
"PriorApplication_YIELD_GROUP for the Client over a 24 calendar months "
"period. It provides a detailed breakdown in the form of a dictionary, "
"where each key represents a unique PriorApplication_YIELD_GROUP. The "
"corresponding value for each key is the cumulative sum of AMT_PAYMENTs"
" within that PriorApplication_YIELD_GROUP. This distribution offers "
"insights into the AMT_PAYMENT spread across different "
"PriorApplication_YIELD_GROUPs for the Client."
)
# Add description
client_installments_amt_payments_by_priorapplication_yield_group_24cmo.update_description(
"Distribution of the total AMT_PAYMENTs of Installments, segmented by "
"PriorApplication_YIELD_GROUP for the Client over a 24 calendar months "
"period. It provides a detailed breakdown in the form of a dictionary, "
"where each key represents a unique PriorApplication_YIELD_GROUP. The "
"corresponding value for each key is the cumulative sum of AMT_PAYMENTs"
" within that PriorApplication_YIELD_GROUP. This distribution offers "
"insights into the AMT_PAYMENT spread across different "
"PriorApplication_YIELD_GROUPs for the Client."
)
In [45]:
Copied!
# Add description
client_installments_amt_payments_by_priorapplication_payment_type_24cmo.update_description(
"Distribution of the total AMT_PAYMENTs of Installments, segmented by "
"PriorApplication_PAYMENT_TYPE for the Client over a 24 calendar months"
" period. It provides a detailed breakdown in the form of a dictionary,"
" where each key represents a unique PriorApplication_PAYMENT_TYPE. The"
" corresponding value for each key is the cumulative sum of "
"AMT_PAYMENTs within that PriorApplication_PAYMENT_TYPE. This "
"distribution offers insights into the AMT_PAYMENT spread across "
"different PriorApplication_PAYMENT_TYPEs for the Client."
)
# Add description
client_installments_amt_payments_by_priorapplication_payment_type_24cmo.update_description(
"Distribution of the total AMT_PAYMENTs of Installments, segmented by "
"PriorApplication_PAYMENT_TYPE for the Client over a 24 calendar months"
" period. It provides a detailed breakdown in the form of a dictionary,"
" where each key represents a unique PriorApplication_PAYMENT_TYPE. The"
" corresponding value for each key is the cumulative sum of "
"AMT_PAYMENTs within that PriorApplication_PAYMENT_TYPE. This "
"distribution offers insights into the AMT_PAYMENT spread across "
"different PriorApplication_PAYMENT_TYPEs for the Client."
)
In [46]:
Copied!
# Add description
client_installments_amt_payments_by_priorapplication_client_type_24cmo.update_description(
"Distribution of the total AMT_PAYMENTs of Installments, segmented by "
"PriorApplication_CLIENT_TYPE for the Client over a 24 calendar months "
"period. It provides a detailed breakdown in the form of a dictionary, "
"where each key represents a unique PriorApplication_CLIENT_TYPE. The "
"corresponding value for each key is the cumulative sum of AMT_PAYMENTs"
" within that PriorApplication_CLIENT_TYPE. This distribution offers "
"insights into the AMT_PAYMENT spread across different "
"PriorApplication_CLIENT_TYPEs for the Client."
)
# Add description
client_installments_amt_payments_by_priorapplication_client_type_24cmo.update_description(
"Distribution of the total AMT_PAYMENTs of Installments, segmented by "
"PriorApplication_CLIENT_TYPE for the Client over a 24 calendar months "
"period. It provides a detailed breakdown in the form of a dictionary, "
"where each key represents a unique PriorApplication_CLIENT_TYPE. The "
"corresponding value for each key is the cumulative sum of AMT_PAYMENTs"
" within that PriorApplication_CLIENT_TYPE. This distribution offers "
"insights into the AMT_PAYMENT spread across different "
"PriorApplication_CLIENT_TYPEs for the Client."
)
In [47]:
Copied!
# Add description
client_installments_amt_payments_by_installment_status_6cmo.update_description(
"Distribution of the total AMT_PAYMENTs of Installments, segmented by "
"INSTALLMENT_STATUS for the Client over a 6 calendar months period. It "
"provides a detailed breakdown in the form of a dictionary, where each "
"key represents a unique INSTALLMENT_STATUS. The corresponding value "
"for each key is the cumulative sum of AMT_PAYMENTs within that "
"INSTALLMENT_STATUS. This distribution offers insights into the "
"AMT_PAYMENT spread across different INSTALLMENT_STATUSs for the "
"Client."
)
# Add description
client_installments_amt_payments_by_installment_status_6cmo.update_description(
"Distribution of the total AMT_PAYMENTs of Installments, segmented by "
"INSTALLMENT_STATUS for the Client over a 6 calendar months period. It "
"provides a detailed breakdown in the form of a dictionary, where each "
"key represents a unique INSTALLMENT_STATUS. The corresponding value "
"for each key is the cumulative sum of AMT_PAYMENTs within that "
"INSTALLMENT_STATUS. This distribution offers insights into the "
"AMT_PAYMENT spread across different INSTALLMENT_STATUSs for the "
"Client."
)
In [48]:
Copied!
# Add description
client_installments_amt_payments_by_installment_status_12cmo.update_description(
"Distribution of the total AMT_PAYMENTs of Installments, segmented by "
"INSTALLMENT_STATUS for the Client over a 12 calendar months period. It"
" provides a detailed breakdown in the form of a dictionary, where each"
" key represents a unique INSTALLMENT_STATUS. The corresponding value "
"for each key is the cumulative sum of AMT_PAYMENTs within that "
"INSTALLMENT_STATUS. This distribution offers insights into the "
"AMT_PAYMENT spread across different INSTALLMENT_STATUSs for the "
"Client."
)
# Add description
client_installments_amt_payments_by_installment_status_12cmo.update_description(
"Distribution of the total AMT_PAYMENTs of Installments, segmented by "
"INSTALLMENT_STATUS for the Client over a 12 calendar months period. It"
" provides a detailed breakdown in the form of a dictionary, where each"
" key represents a unique INSTALLMENT_STATUS. The corresponding value "
"for each key is the cumulative sum of AMT_PAYMENTs within that "
"INSTALLMENT_STATUS. This distribution offers insights into the "
"AMT_PAYMENT spread across different INSTALLMENT_STATUSs for the "
"Client."
)
In [49]:
Copied!
# Add description
client_entropy_of_count_of_installments_by_installment_status_24cmo.update_description(
"The feature evaluates the distribution of a Client's count of "
"Installments across various INSTALLMENT_STATUSs over a 24 calendar "
"months period using entropy. Higher entropy signifies a more uniform "
"distribution of count of Installments across INSTALLMENT_STATUSs, "
"while lower entropy suggests a concentration within specific "
"INSTALLMENT_STATUSs."
)
# Add description
client_entropy_of_count_of_installments_by_installment_status_24cmo.update_description(
"The feature evaluates the distribution of a Client's count of "
"Installments across various INSTALLMENT_STATUSs over a 24 calendar "
"months period using entropy. Higher entropy signifies a more uniform "
"distribution of count of Installments across INSTALLMENT_STATUSs, "
"while lower entropy suggests a concentration within specific "
"INSTALLMENT_STATUSs."
)