我有一个像这样的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 2017
3 MSFT 2017
4 MSFT 2016
我想按代码分组,并为每行(日期)创建一个字符串。例如,我想创建2个看起来像这样的字符串。
x = "SomeOtherString"
"SomeOtherStringAAPL20192017"
"SomeOtherStringMSFT20172016"
您可以像这样使用paste0
每个ticker
:
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
在基数R中:
transform(aggregate(Date~ticker, df, paste0, collapse = ''),
string = paste0(x, ticker, Date))
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句