【发布时间】:2020-05-21 14:12:21
【问题描述】:
有没有一种方法可以更改数据框的列标题名称,仅用于显示目的。例如
虹膜数据具有以下默认列
ini_col <- c("Sepal.Length","Sepal.Width","Petal.Length","Petal.Width" ,"Species")
如果我需要将其更改为新列下方。但只是显示目的。意思是,旧列的引用不应该消失。例如,我应该仍然能够执行 iris[["Species"]] 而不是 iris[["Category"]]
new_col <- c("Sep Len","Sep Wid","Pet Len","Pet Wid","Category")
head(iris)
Sep Len Sep Wid Pet Len Pet Wid Category
1 5.1 3.5 1.4 0.2 setosa
2 4.9 3.0 1.4 0.2 setosa
3 4.7 3.2 1.3 0.2 setosa
4 4.6 3.1 1.5 0.2 setosa
5 5.0 3.6 1.4 0.2 setosa
6 5.4 3.9 1.7 0.4 setosa
我们实际上可以使用下面的代码 下面的代码1
mtcars2 <-
set_label(mtcars,
am = "Automatic",
mpg = "Miles per gallon",
cyl = "Cylinders",
qsec = "Quarter mile time")
但我有一个数据框,其中有旧列和新列。我们可以在上面的代码 1 中使用这个数据框吗
df
Old COl new COl
am Automatic
mpg Miles per gallon
cyl Cylinders
qsec Quarter mile time
我们可以在执行 Code1 时使用这个数据框吗?
【问题讨论】:
-
谢谢。但是旧的参考会改变吗?在 Shiny 应用程序的某个地方,我可以执行
iris[["Species"]] -
意思,新列只是显示目的而已
-
嗨,也许这种方法可行? stackoverflow.com/a/51444998/7347699
-
labelVector 包看起来很有希望。我从未使用过它,而且由于您在 cmets 中谈论 Shiny,它可能在很大程度上取决于您用于显示数据的函数/包。
-
@GregorThomas 非常感谢。但是我有数据框形式的新列(请参阅已编辑的问题)。我们可以保留这个数据框并执行 setlabel 吗?
标签: r