如何从不同间隔的列表中提取值(由列表定义)

共同的

我想以不同的间隔从数据框中的列中提取值。间隔存储在列表中。有没有办法提取这个?

该列如下所示:

6211
6111
711
414  
3211  
3311 
3411  
3511 
6211 
6111
...

和这样的清单:

"2"  "4"  "2"  "6"  "15" "2"  "9"...

现在我想在 df 的列上应用列表(列表定义了所需值之间的步骤。结果应该作为新变量存储在 df 中。由于缺少值,我们需要用 NA 填充新列.这些应该存储在列表中定义的间隔中。

所以结果应该是这样的:


#    X       Y
1   6211    711
2   6111     NA
3    711     NA
4    414    3411
5   3211     NA
....

其中行之间的 NA 数再次由向量定义。在最后一步中,我想将 X 和 Y 粘贴在一起以获得关键变量。

谢谢!

罗纳克·沙阿

我们可以使用cumsum向量并对列进行子集

df$x[cumsum(c(1,vec))]
#[1] 6211  711 3411 6211

或者如果你想把它作为一列

df[cumsum(c(1,vec)), ,drop = FALSE]

或使用slicedplyr

library(dplyr)
df %>%  slice(cumsum(c(1, vec)))

#    x
#1 6211
#2  711
#3 3411
#4 6211

编辑

对于更新部分以获得新列,Y我们可以做

vals <- df$x[cumsum(c(1,vec))][-1]
df$y <- NA
df$y[cumsum(c(1, vec + 1))] <- vals

数据

df <- data.frame(x = c(6211, 6111, 711, 414,3211,3311, 3411,3511,6211,6111))
vec <- as.numeric(c("2","4","2"))

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

从列表Python中提取值

来自分类Dev

从字典列表中提取值

来自分类Dev

从from列表中提取值列表

来自分类Dev

您如何从列表中提取不同的元素?

来自分类Dev

如何从Mule foreach中的xml列表中提取值

来自分类Dev

如何从SQL XML列中提取值列表

来自分类Dev

如何从列表框中的按钮中提取值?

来自分类Dev

从由列表组成的列表中提取列

来自分类Dev

从列表中提取值并创建元组

来自分类Dev

从哈希映射列表中提取值Clojure

来自分类Dev

从任意深度列表中提取值

来自分类Dev

从列表中的字典中提取值

来自分类Dev

从列表中提取值并创建元组

来自分类Dev

根据模式从行/列表中提取值

来自分类Dev

更快地从数组中提取值列表

来自分类Dev

React 从列表键中提取值

来自分类Dev

从嵌套的 Json 列表中提取值

来自分类Dev

尝试从 aray 的下拉列表中提取值

来自分类Dev

使用 grep 从键值对列表中提取值

来自分类Dev

如何绘制由嵌套列表中提取的条目组成的图?

来自分类Dev

从间隔中提取值样本

来自分类Dev

从OCaml中的列表列表中提取值

来自分类Dev

使用R从列表列表中提取值

来自分类Dev

使用R从列表列表中提取值

来自分类Dev

从OCaml中的列表列表中提取值

来自分类Dev

从数据框中的列表列表中提取值

来自分类Dev

python-如何从由数字和字符串组成的列表列表中提取数据?

来自分类Dev

如何从元组列表中提取列表

来自分类Dev

如何从元组列表中提取列表