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

R语言中如何将下一行wp_data追加至上一行列表并逐行重复?

实现列表的累积追加

你当前的testing数据框中,wp_data列每行是仅包含单个值的列表,需要实现逐行将当前行及之前所有行的wp_data值合并为一个列表的效果,也就是累积式的列表追加。

解决方案代码

library(tidyverse)

testing_final <- testing %>%
  # 提取wp_data列表中的单个值,转为数值向量
  mutate(wp_value = map_dbl(wp_data, ~ .x)) %>%
  # 累积合并:每次把当前值追加到之前的结果列表中
  mutate(wp_data = accumulate(wp_value, ~ c(.x, .y))) %>%
  # 移除临时生成的wp_value列
  select(-wp_value)

代码说明

  1. 提取单个值:map_dbl(wp_data, ~ .x) 将每行wp_data列表里的唯一值提取出来,生成数值列wp_value,方便后续累积操作。
  2. 累积合并:purrr::accumulate() 会遍历wp_value列,每次把当前元素(.y)追加到之前累积的结果(.x)中,最终每行的wp_data就变成了包含当前及之前所有值的列表。
  3. 清理临时列:最后用select(-wp_value)删掉不需要的临时列,得到目标结果。

举个例子,假设原始数据是:

play_idwp_data
1[0.2]
2[0.3]
3[0.4]

运行代码后会得到:

play_idwp_data
1[0.2]
2[0.2, 0.3]
3[0.2, 0.3, 0.4]

完全匹配你期望的输出格式。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.22 13:57:16