gpt4 book ai didi

r - 按行选择一行中的最后一个值

转载 作者:行者123 更新时间:2023-12-04 05:26:02 24 4
gpt4 key购买 nike

我有一个数据框,其中每一行都是不同长度的值的向量。我想在每一行中创建一个包含最后一个真值的向量。

这是一个示例数据框:

df <- read.table(tc <- textConnection("
var1 var2 var3 var4
1 2 NA NA
4 4 NA 6
2 NA 3 NA
4 4 4 4
1 NA NA NA"), header = TRUE); close(tc)

因此,我想要的值向量是 c(2,6,3,4,1) .

我只是不知道如何让 R 识别最后一个值。

任何帮助表示赞赏!

最佳答案

通过结合三件事来做到这一点:

  • 识别 NA值与 is.na
  • 使用 tail 查找向量中的最后一个值
  • 使用 apply将此函数应用于 data.frame 中的每一行

  • 编码:
    lastValue <- function(x)   tail(x[!is.na(x)], 1)

    apply(df, 1, lastValue)
    [1] 2 6 3 4 1

    关于r - 按行选择一行中的最后一个值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7532639/

    24 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com