如何提取现有变量的值并将它们粘贴到数据框的顶行(使用 R)

法比安·哈伯萨克

可能有一个非常简单的解决方案,但由于某种原因我无法弄清楚。这就是我的数据(在 R 中)的样子(除了value_new我需要的确切描述!):

dat<-data.frame("id"=c(1,2,3,4,5,NA,NA,NA,NA,NA),
      "value"=c(rep(NA,5),7,NA,4,1,9),
      "value_new"=c(7,NA,4,1,9,rep(NA,5)))

我希望这是不言自明的。我需要的是“value”的值is.na(value)(即前五行)并将这些值粘贴为我想称为“value_new”的新变量五行(即 when value<0)。

有什么简单的方法可以做到这一点?我基本上需要剪掉下半部分并将其粘贴为数据框顶部的新变量。希望这是有道理的。

安东尼奥斯·K
dat<-data.frame("id"=c(1,2,3,4,5,NA,NA,NA,NA,NA),
                "value"=c(rep(NA,5),7,NA,4,1,9))

dat$value_new = NA
dat$value_new[!is.na(dat$id)] = dat$value[is.na(dat$id)]
dat

#    id value value_new
# 1   1    NA         7
# 2   2    NA        NA
# 3   3    NA         4
# 4   4    NA         1
# 5   5    NA         9
# 6  NA     7        NA
# 7  NA    NA        NA
# 8  NA     4        NA
# 9  NA     1        NA
# 10 NA     9        NA

如果您有更多行与非NA id相比,NA id您可以使用:

dat<-data.frame("id"=c(1,2,3,4,5,6,NA,NA,NA,NA,NA),
                "value"=c(rep(NA,6),7,NA,4,1,9))

k = sum(is.na(dat$id))
dat$value_new = NA
dat$value_new[!is.na(dat$id)][1:k] = dat$value[is.na(dat$id)]
dat

#    id value value_new
# 1   1    NA         7
# 2   2    NA        NA
# 3   3    NA         4
# 4   4    NA         1
# 5   5    NA         9
# 6   6    NA        NA
# 7  NA     7        NA
# 8  NA    NA        NA
# 9  NA     4        NA
# 10 NA     1        NA
# 11 NA     9        NA

k您将在新列的顶部替换的值的数量在哪里

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

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

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

R-如何制作循环函数以提取数据并将其粘贴到新的数据框中

在R中获取数据框的ID,并将文本从描述列粘贴到具有匹配ID的所有行中

从列表中提取值和属性,并将它们转换为R中的数据框

计算观察值并将它们添加到 R 中的数据框中

将 for 循环中的值粘贴到数据框 R

如何使用r提取斜率并截取分段包产生的变量并将其放入数据框?

如何使用 $ 将 R 数据框中的列粘贴到公式的循环中?

R Shiny:从 excel 复制单元格并将它们粘贴到 Shiny 应用程序中,然后用它们创建一个数据表

如何重塑数据帧并将多个值粘贴到 R 中稀疏矩阵的单个单元格中?

提取在R数据框中具有共同值的行

R:复制向量中的某些元素并将其粘贴到数据框中

分组依据并将2个变量粘贴到R中

如何从矩阵中提取预测值和实际值向量,以将它们与R中的confusionMatrix()一起使用?

如何使用基于现有数据框的值以及R中数字矢量的范围来创建新数据框。

复制数据并将其粘贴到R中

如何读取变量名称列表并将它们替换为 R 中的函数?

如何读取变量名称列表并将它们替换为 R 中的函数?

使用带有 grepl 和循环的名称列表从字符串中提取名称,并将它们添加到 R 中的新列

如何粘贴数据框行中的文本,仅在 R 中保留唯一值

有没有更快的方法从 R 中的多个数据框中删除顶行

R 初学者:如何组合两个变量并将它们合并到一个新的数据帧中

比较 R 中的 3 个不同的 .csv 文件并将它们之间的公共数据提取到新的 .csv

如何使用R的xpathApply提取kml坐标并将其放入数据框

如何检索数据框中的值并将其用作 R 中的变量?

如何提取 R 中第一行包含特定值的数据框的所有列

如何获取列值并将它们粘贴到水平行中?

如何从目录的多个 csv 中提取特定值,并将它们附加到数据框中?

仅将选择性 Excel 工作簿读入 R 并将它们保存为数据框

如何从R中的列中提取由|分隔的字符串 并将它们放入单独的列中?