我正在处理一个查询的数据框,它看起来像:
| 用户ID| 2012年1月1日|2012年2月1日|2012年2月1日|
| - ------| - ------| - ------| - ------|
| 细胞1|不适用|第二章|不适用|
| 单元格3| 1个|不适用|五个|
我希望找到第一个非空列(不包括User ID列)的日期(列名)、最后一个非空列的名称以及每个用户ID的这些日期之间的持续时间。
谢谢大家!
我试过了
df$min_date<-apply(df[-1], 1, function(x)
x[which.min(which(is.na(x) == FALSE))])
以及
df$min_date<-apply(df[-1], 1, function(x)
colnames(x[min(which(is.na(x) == FALSE))]))
但没有成功
2条答案
按热度按时间wz3gfoph1#
不如这样:
由reprex package(v2.0.1)于2022年12月13日创建
这里有一个基本的R方式(尽管使用了lubridate),它更符合你最初的想法:
由reprex package(v2.0.1)于2022年12月13日创建
5jdjgkvh2#
下面是一个
tidyverse
选项:注意你使用的是非语法名称,而且第3列和第4列的名称相同。这在R中不起作用: