我正在尝试基于现有字段创建一个新字段。基本上,如果现有字段中的行包含以#开头的字符串,请将该行中的值用作新字段中的行。如果不是,请在新字段的该行中使用现有字段中的最新值(带有#)。
抱歉,这听起来令人困惑,这是一个例子:
df = data.frame(V1 = c("#text1",1,3,4,"#text2",2,"#text3"),stringsAsFactors = FALSE)
df_desired = data.frame(V1 = c("#text1",newcol = c("#text1","#text1",stringsAsFactors = FALSE)
这是我尝试的操作,但它返回错误:
df_new = df %>% mutate(newcol = ifelse(grep("#",df$V1[]) == 1,df$V1[],lag(df$V1[])))
谢谢!