我的数据长这样:
#> Artist Album Year
#> 1 Beatles Sgt. Pepper's 1967
#> 2 Rolling Stones Sticky Fingers 1971
我的问题应该很简单。我正在尝试使用rename_if
来仅给以字母“A”开头的列添加前缀。因此,我想要的输出结果是:
#> df1_Artist df1_Album Year
#> 1 Beatles Sgt. Pepper's 1967
#> 2 Rolling Stones Sticky Fingers 1971
你可以看到,“年份”不应该加前缀。
这是我的尝试,但它还没有完全起作用。我是否错误地使用了“starts_with”?我应该尝试将其拆分成两行,以便更清楚地理解它吗?我仍在学习purrr风格的函数,所以对我来说并不总是直观的。
df1 %>% rename_if(starts_with("A"), .funs = ~ paste0(df1, .))
#> Error in df1 %>% rename_if(starts_with("A"), .funs = ~paste0(df1, .)): could not find function "%>%"
数据输入的代码:
df1 <- data.frame(stringsAsFactors=FALSE,
Artist = c("Beatles", "Rolling Stones"),
Album = c("Sgt. Pepper's", "Sticky Fingers"),
Year = c(1967, 1971)
)
rename_at
和rename_if
之间的区别。以前我从来没有理解过这两者的区别。谢谢。 - Jeremy K.rename_at
,rename_if
以及purrr函数的特定资料?Hadley的R4DS是否是最适合我的学习材料? - Jeremy K.