You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

解决tidyr::unnest_longer()无法循环输入的报错问题

tidyr::unnest_longer() 报错:无法将大小为14的输入循环为大小12

逐行运行代码后定位到tidyr::unnest_longer()是报错根源,错误提示为:第1行无法将大小为14的输入循环为大小12。数据已转为宽格式,存在NULL值,尝试将其替换为NA并使用drop_na()处理,但仍无法解决问题。

原始代码

# 原始代码
df %>%
  filter(n() > 2L, .by = sn2) %>%
  pivot_wider(names_from = sn3, values_from = leisure:hyear,
              values_fn = list) %>% 
  unnest_longer(leisure_1:hyear_2)

报错信息

Error in `unnest_longer()`:
! In row 1, can't recycle input of size 14 to size 12.
Backtrace:
 1. ... %>% unnest_longer(leisure_1:hyear_2)
 2. tidyr::unnest_longer(., leisure_1:hyear_2)

尝试修正后的代码

df %>%
  filter(n() > 2L, .by = sn2) %>%
  pivot_wider(names_from = sn3, values_from = leisure:hyear,
              values_fn = list) %>% 
  mutate(across(everything(), ~ifelse(. == "NULL", NA, .))) %>%
  drop_na() %>% 
  unnest_longer(leisure_1:hyear_2)

数据结构及期望输出见原文内容。

内容的提问来源于stack exchange,提问作者Victoria

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.27 10:45:56