R语言中常用的数据变量名修改方法总结

时间:2025-02-15 11:55:00

变量的重命名 常用的修改变量名的方法,分别是利用交互式编辑器,rename(),names(),colnames(), rownames().

1)交互式编辑器修改变量名

若用交互式编辑器来修改数据集中的变量名,可通过fix()函数实现。若数据集为矩阵或数据框,可直接单击弹出的编辑器对话框对变量名进行手动修改;若数据集为列表形式,则可将交互式编辑器转换为记事本,就可对“.names”之后对应的变量名进行修改。具体如下。

> score <- (student=c("A","B","c","D"), 
+                         gender=c("E","E","E","E"),
+                         math=c(90,79,89,86),
+                         Eng=c(80,99,69,76),
+                         pl=c(66,59,NA,88))
> fix(score) # editor page
>  = (score) #Convert to list format
> fix() # Notepad file

 2) reshape 逻辑包的Rename()可用于修改数据框和列表的变量名,但不能用于修改矩阵的变量名。

> library(reshape)
Error in library(reshape) : 不存在叫‘reshape’这个名字的程辑包
> ("reshape")
> library(reshape)
> rename(score,c(pl="chinese"))
  student gender math Eng chinese
1       A      E   90  80      66
2       B      E   79  99      59
3       c      E   89  69      NA
4       D      E   86  76      88
> rename(, c(pl="chinese"))
$student
[1] A B c D
Levels: A B c D
$gender
[1] E E E E
Levels: E
$math
[1] 90 79 89 86
$Eng
[1] 80 99 69 76
$chinese
[1] 66 59 NA 88

3names()函数和rename()函数的作用相同,但不同之处在于,names()函数会在原数据集中修改变量名,但renames()函数并不会直接改变原数据集中的变量名

> names(score) [5]="chinese"
> score
  student gender math Eng chinese
1       A      E   90  80      66
2       B      E   79  99      59
3       c      E   89  69      NA
4       D      E   86  76      88

4)  colnames() and rownames()函数可以修改矩阵或数据框的行名和列名,但不可修改矩阵的变量名。

> colnames(score)[5]="Chinese"
> rownames(score) =letters[1:4]
> score
  student gender math Eng Chinese
a       A      E   90  80      66
b       B      E   79  99      59
c       c      E   89  69      NA
d       D      E   86  76      88