expss tab_pivot() 不从 for 循环内部返回任何内容
expss tab_pivot() not returning anything from inside a for loop
expss 看起来很适合我的目的,但我遇到了一个小问题。
尝试 1(无效):
当我在数据框上使用 expss 时,一切正常,但我想对数据框进行子集化,然后在每个子集上调用 expss。要子集化并调用 expss,我正在使用 for 循环。数据框是正确的子集,但 expss 没有 return 任何东西。
municipal_lists <- unique(leeftijd1$Regio)[1:3]
for (i in seq_along(municipal_lists)){
zx <-subset(leeftijd1, leeftijd1$Regio == municipal_lists[i])
zx %>%
expss::tab_rows(Regio) %>%
expss::tab_cells(`Leeftijdscategorie 1`) %>%
expss::tab_cols(Perioden) %>%
expss::tab_stat_cases() %>%
expss::tab_pivot()
}
尝试 2(无效):
然后我创建了一个所有 expss 调用的函数。当我在数据框上使用这个函数时,它起作用了。但是,如果我将此函数放入 for 循环中,则函数中不会 return 编辑任何内容。
get_table <-function(zx){
zx %>%
expss::tab_rows(Regio) %>%
expss::tab_cells(`Leeftijdscategorie 1`) %>%
expss::tab_cols(Perioden) %>%
expss::tab_stat_cases() %>%
expss::tab_pivot() #%>%
}
municipal_lists <- unique(leeftijd1$Regio)[1:3]
for (i in seq_along(municipal_lists)){
zx <-subset(leeftijd1, leeftijd1$Regio == municipal_lists[i])
get_table(zx)
}
函数正在工作:函数调用在没有 for 循环的情况下工作,但对于整个数据帧(具有固定索引)
get_table <-function(zx){
zx %>%
expss::tab_rows(Regio) %>%
expss::tab_cells(`Leeftijdscategorie 1`) %>%
expss::tab_cols(Perioden) %>%
expss::tab_stat_cases() %>%
expss::tab_pivot()
}
municipal_lists <- unique(leeftijd1$Regio)[1:3]
zx <-subset(leeftijd1, leeftijd1$Regio == municipal_lists[1])
get_table(zx)
直接调用正在运行:没有 for 循环或没有函数调用的最简单形式正在按预期运行。
zx <- leeftijd1
zx %>%
expss::tab_rows(Regio) %>%
expss::tab_cells(`Leeftijdscategorie 1`) %>%
expss::tab_cols(Perioden) %>%
expss::tab_stat_cases() %>%
expss::tab_pivot()
那么,如何为较大数据框的每个子集获取 expss table?有人可以指导我吗?
您需要对循环内的计算结果做一些处理。您可以打印它们,例如:
municipal_lists <- unique(leeftijd1$Regio)[1:3]
for (i in seq_along(municipal_lists)){
zx <-subset(leeftijd1, leeftijd1$Regio == municipal_lists[i])
zx %>%
expss::tab_rows(Regio) %>%
expss::tab_cells(`Leeftijdscategorie 1`) %>%
expss::tab_cols(Perioden) %>%
expss::tab_stat_cases() %>%
expss::tab_pivot() %>%
print()
}
expss 看起来很适合我的目的,但我遇到了一个小问题。
尝试 1(无效): 当我在数据框上使用 expss 时,一切正常,但我想对数据框进行子集化,然后在每个子集上调用 expss。要子集化并调用 expss,我正在使用 for 循环。数据框是正确的子集,但 expss 没有 return 任何东西。
municipal_lists <- unique(leeftijd1$Regio)[1:3]
for (i in seq_along(municipal_lists)){
zx <-subset(leeftijd1, leeftijd1$Regio == municipal_lists[i])
zx %>%
expss::tab_rows(Regio) %>%
expss::tab_cells(`Leeftijdscategorie 1`) %>%
expss::tab_cols(Perioden) %>%
expss::tab_stat_cases() %>%
expss::tab_pivot()
}
尝试 2(无效): 然后我创建了一个所有 expss 调用的函数。当我在数据框上使用这个函数时,它起作用了。但是,如果我将此函数放入 for 循环中,则函数中不会 return 编辑任何内容。
get_table <-function(zx){
zx %>%
expss::tab_rows(Regio) %>%
expss::tab_cells(`Leeftijdscategorie 1`) %>%
expss::tab_cols(Perioden) %>%
expss::tab_stat_cases() %>%
expss::tab_pivot() #%>%
}
municipal_lists <- unique(leeftijd1$Regio)[1:3]
for (i in seq_along(municipal_lists)){
zx <-subset(leeftijd1, leeftijd1$Regio == municipal_lists[i])
get_table(zx)
}
函数正在工作:函数调用在没有 for 循环的情况下工作,但对于整个数据帧(具有固定索引)
get_table <-function(zx){
zx %>%
expss::tab_rows(Regio) %>%
expss::tab_cells(`Leeftijdscategorie 1`) %>%
expss::tab_cols(Perioden) %>%
expss::tab_stat_cases() %>%
expss::tab_pivot()
}
municipal_lists <- unique(leeftijd1$Regio)[1:3]
zx <-subset(leeftijd1, leeftijd1$Regio == municipal_lists[1])
get_table(zx)
直接调用正在运行:没有 for 循环或没有函数调用的最简单形式正在按预期运行。
zx <- leeftijd1
zx %>%
expss::tab_rows(Regio) %>%
expss::tab_cells(`Leeftijdscategorie 1`) %>%
expss::tab_cols(Perioden) %>%
expss::tab_stat_cases() %>%
expss::tab_pivot()
那么,如何为较大数据框的每个子集获取 expss table?有人可以指导我吗?
您需要对循环内的计算结果做一些处理。您可以打印它们,例如:
municipal_lists <- unique(leeftijd1$Regio)[1:3]
for (i in seq_along(municipal_lists)){
zx <-subset(leeftijd1, leeftijd1$Regio == municipal_lists[i])
zx %>%
expss::tab_rows(Regio) %>%
expss::tab_cells(`Leeftijdscategorie 1`) %>%
expss::tab_cols(Perioden) %>%
expss::tab_stat_cases() %>%
expss::tab_pivot() %>%
print()
}