我想在变量包含不同 YEAR时拆分行,也拆分 col :“价格”除以出现的日期数--> count (“;”) +1
有一个表,其中包含尚未拆分的变量。
# Dataset call df
Price Date
500 2016-01-01
400 2016-01-03;2016-01-09
1000 2016-01-04;2017-09-01;2017-08-10;2018-01-01
25 2016-01-04;2017-09-01
304 2015-01-02
238 2018-01-02;2018-02-02
愿望展望
# Targeted df
Price Date
500 2016-01-01
400 2016-01-03;2016-01-09
250 2016-01-04
250 2017-09-01
250 2017-08-10
250 2018-01-01
12.5 2016-01-04
12.5 2017-09-01
304 2015-01-02
238 2018-01-02;2018-02-02
一旦定义了包含不同年份的变量,下面就是必须要做的操作。(这只是一个例子。)
mutate(Price = ifelse(DIFFERENT_DATE_ROW,
as.numeric(Price) / (str_count(Date,";")+1),
as.numeric(Price)),
Date = ifelse(DIFFERENT_DATE_ROW,
strsplit(as.character(Date),";"),
Date)) %>%
unnest()
我遇到了一些无法使用 dplyr 功能的约束,"if_else"
因为
否则无法识别任何操作。只有 ifelse 才能正常工作。
如何找出一个变量的年份差异来引发分割线和分割价格计算?
到目前为止,拆分元素的操作就像
unlist(lapply(unlist(strsplit(df1$noFDate[8],";")),FUN = year))
不能解决问题。
我是编码初学者,考虑到真实数据有超过 200 万行和 50 列,请随意更改上述所有操作。