wrapup期间出错:计算嵌套太深:无限递归/选项(表达式=)?
我试图使用一个自定义函数kmeans\u mapper,使用centers参数迭代“k”的许多值,但得到以下错误:wrapup期间出错:计算嵌套太深:无限递归/选项(表达式=)?,r,machine-learning,k-means,R,Machine Learning,K Means,我试图使用一个自定义函数kmeans\u mapper,使用centers参数迭代“k”的许多值,但得到以下错误: Error during wrapup: evaluation nested too deeply: infinite recursion / options(expressions=)? 代码如下: library(tidyverse) library(tidyquant) library(broom) library(umap) library(readr) library(
Error during wrapup: evaluation nested too deeply: infinite recursion / options(expressions=)?
代码如下:
library(tidyverse)
library(tidyquant)
library(broom)
library(umap)
library(readr)
library(readxl)
library(purrr)
sp_500_prices_tbl <- read_rds("raw_data/sp_500_prices_tbl.rds")
sp_500_prices_tbl
sp_500_index_tbl <- read_rds("raw_data/sp_500_index_tbl.rds")
sp_500_index_tbl
sp_500_daily_returns_tbl <- sp_500_prices_tbl %>%
select(symbol, date, adjusted) %>%
filter(date >= as.Date("2018-01-01")) %>%
mutate(lag_of_one_day = lag(adjusted, 1)) %>%
filter(!is.na(lag_of_one_day)) %>%
mutate(diffrence = adjusted - lag_of_one_day) %>%
mutate(pct_return = diffrence/lag_of_one_day) %>%
select(symbol, date, pct_return)
sp_500_daily_returns_tbl
stock_date_matrix_tbl <- sp_500_daily_returns_tbl %>%
select(symbol, date, pct_return) %>%
pivot_wider(names_from = date, values_from = pct_return, values_fill = 0) %>%
ungroup()
stock_date_matrix_tbl_drop <- stock_date_matrix_tbl
stock_date_matrix_tbl_drop$symbol <- NULL
stock_date_matrix_tbl_drop
km_cluster <- kmeans(na.omit(stock_date_matrix_tbl_drop), centers = 4, nstart = 20)
km_cluster$cluster
broom::tidy(km_cluster) %>% glimpse()
broom::glance(km_cluster)
kmeans_mapper <- function(center = 3) {
stock_date_matrix_tbl_drop %>%
#select(-symbol) %>%
#kmeans(centers = center, nstart = 20)
kmeans(na.omit(stock_date_matrix_tbl_drop), centers = center, nstart = 20)
} %>% kmeans_mapper() %>% glance()
kmeans_mapped_tbl <- tibble(centers = 1:30) %>%
mutate(k_means = centers %>% map(kmeans_mapper)) %>%
mutate(glance = k_means %>% map(glance))
库(tidyverse)
图书馆(tidyquant)
图书馆(扫帚)
图书馆(umap)
图书馆(readr)
图书馆(readxl)
图书馆(purrr)
标普500价格=截止日期(“2018-01-01”)%>%
突变(滞后一天=滞后(调整后,1))%>%
过滤器(!is.na(滞后一天))%>%
变异(差异=调整-滞后一天)%>%
突变(pct\u返回=一天的差异/滞后)%>%
选择(符号、日期、pct\U返回)
sp_500_每日_返回值_tbl
库存\日期\矩阵\待定%
选择(符号、日期、pct\U返回)%>%
透视图(名称从=日期,值从=pct返回,值填充=0)%>%
解组()
库存数据矩阵下降%kmeans\u映射器()%>%glance()
kmeans\u映射\u tbl%
变异(k_平均值=中心%>%map(kmeans_映射器))%>%
突变(一瞥=k_意味着%>%map(一瞥))
输出应如下所示:
您正在做的事情与定义kmeans\u包装器时类似。