使用 tsfresh 仅选择一定数量的顶级功能
Selecting only a certain number of top features using tsfresh
如何使用 tsfresh select 时间序列的前 n 个特征?我可以决定要提取的顶级特征的数量吗?
根据@Chaitra和this answer的上述评论,我给出了答案。
您可以使用文档 here 中描述的 tsfresh
相关性 table 来决定热门功能的数量。然后,您可以按 p 值和顶部 n
特征对 table 进行排序。
示例代码打印前 11 个特征:
from tsfresh import extract_features
from tsfresh.feature_selection.relevance import calculate_relevance_table
extracted_features = extract_features(
X,
column_id="id",
column_kind="kind",
column_value="value",
)
relevance_table = calculate_relevance_table(extracted_features, y)
relevance_table = relevance_table[relevance_table.relevant]
relevance_table.sort_values("p_value", inplace=True)
print(relevance_table.loc["feature"][:11])
如何使用 tsfresh select 时间序列的前 n 个特征?我可以决定要提取的顶级特征的数量吗?
根据@Chaitra和this answer的上述评论,我给出了答案。
您可以使用文档 here 中描述的 tsfresh
相关性 table 来决定热门功能的数量。然后,您可以按 p 值和顶部 n
特征对 table 进行排序。
示例代码打印前 11 个特征:
from tsfresh import extract_features
from tsfresh.feature_selection.relevance import calculate_relevance_table
extracted_features = extract_features(
X,
column_id="id",
column_kind="kind",
column_value="value",
)
relevance_table = calculate_relevance_table(extracted_features, y)
relevance_table = relevance_table[relevance_table.relevant]
relevance_table.sort_values("p_value", inplace=True)
print(relevance_table.loc["feature"][:11])