У меня есть два вектора
randomName1 = c(4,5,6,3,2,1)
randomName2 = c(3,4,5,6,7,4)
может легко слиться в фрейм данных с этой простой функцией
fun = function(x, y) {
df = data.frame(x, y)
df
}
fun(randomName1,randomName2)
x y
1 4 3
2 5 4
3 6 5
4 3 6
5 2 7
6 1 4
, но векторы потеряли свои имена.Вы можете добавить еще два аргумента в функцию и сделать это:
fun = function(x, y, name1, name2) {
df = data.frame(x, y)
colnames(df) = c(name1, name2)
df
}
fun(randomName1, randomName2, "randomName1", "randomName2")
randomName1 randomName2
1 4 3
2 5 4
3 6 5
4 3 6
5 2 7
6 1 4
Но в этом случае нам нужны дополнительные аргументы, и мы не можем просто передать векторы напрямую.Есть ли простой способ сохранить имя векторов как имена столбцов информационного кадра без добавления дополнительных аргументов функции?