gpt4 book ai didi

r - 通过删除 R 中的 NA 组合多于 2 列

转载 作者:行者123 更新时间:2023-12-04 14:28:05 25 4
gpt4 key购买 nike

乍一看,这似乎是 Combine/merge columns while avoiding NA? 的副本。但事实上并非如此。我有时会处理两列以上而不是两列。

我的数据框如下所示:

     col1 col2 col3 col4 col5
[1,] 1 NA NA 13 NA
[2,] NA NA 10 NA 18
[3,] NA 7 NA 15 NA
[4,] 4 NA NA 16 NA

现在我想将这个数据框“折叠”成一个具有较少列和删除 NA 的数据框。事实上,我正在寻找和“优秀的做事方式”:删除一个单元格,整行将向左移动一个单元格。

本示例中的结果将是:
     col1 col2 
[1,] 1 13
[2,] 10 18
[3,] 7 15
[4,] 4 16

有没有人知道如何在 R 中做到这一点?提前谢谢了!

最佳答案

您可以使用 apply为了这。如果 df 是您的数据框`:

df2 <- apply(df,1,function(x) x[!is.na(x)])
df3 <- data.frame(t(df2))
colnames(df3) <- colnames(df)[1:ncol(df3)]

输出:
#      col1 col2
# 1 13
# 10 18
# 7 15
# 4 16

关于r - 通过删除 R 中的 NA 组合多于 2 列,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23008142/

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