分组并在R中粘贴2个变量
我有一个data.frame,看起来像这样分组并在R中粘贴2个变量,r,R,我有一个data.frame,看起来像这样 df = data.frame(ticker = c(rep("AAPL", 2), rep("MSFT",2)), Date = c("2019", "2017", "2017", "2016")) print(df) ticker Date 1 AAPL 2019 2 AAPL 2
df = data.frame(ticker = c(rep("AAPL", 2), rep("MSFT",2)),
Date = c("2019", "2017", "2017", "2016"))
print(df)
ticker Date
1 AAPL 2019
2 AAPL 2017
3 MSFT 2017
4 MSFT 2016
我想按股票代码分组,并为每一行(日期)创建一个字符串。例如,我想创建两个如下所示的字符串
x = "SomeOtherString"
"SomeOtherStringAAPL20192017"
"SomeOtherStringMSFT20172016"
您可以对每个
ticker
使用paste0
,如下所示:
library(dplyr)
df %>%
group_by(ticker) %>%
summarise(string = paste0(x, first(ticker), paste0(Date, collapse = '')))
# ticker string
# <chr> <chr>
#1 AAPL SomeOtherStringAAPL20192017
#2 MSFT SomeOtherStringMSFT20172016
transform(aggregate(Date~ticker, df, paste0, collapse = ''),
string = paste0(x, ticker, Date))