Change single row name in data.frame

Sylvia Rodriguez picture Sylvia Rodriguez · Aug 20, 2019 · Viewed 8.2k times · Source

I apologize in advance if this is a duplicate question.

How can I change the name of a single row in a data.frame in R? For example, in the mtcars dataset, how do I rename the row Merc 280 and call it Some Mercedes?

All other posts seem to answer how to replace all row names at once.

Thank you.

Answer

Ronak Shah picture Ronak Shah · Aug 20, 2019

You could subset the rownames of mtcars and then update

df <- mtcars
rownames(df)[rownames(df) == "Merc 280"] <- "Some Mercedes"

df
#                     mpg cyl  disp  hp drat    wt  qsec vs am gear carb
#Mazda RX4           21.0   6 160.0 110 3.90 2.620 16.46  0  1    4    4
#Mazda RX4 Wag       21.0   6 160.0 110 3.90 2.875 17.02  0  1    4    4
#Datsun 710          22.8   4 108.0  93 3.85 2.320 18.61  1  1    4    1
#Hornet 4 Drive      21.4   6 258.0 110 3.08 3.215 19.44  1  0    3    1
#Hornet Sportabout   18.7   8 360.0 175 3.15 3.440 17.02  0  0    3    2
#Valiant             18.1   6 225.0 105 2.76 3.460 20.22  1  0    3    1
#Duster 360          14.3   8 360.0 245 3.21 3.570 15.84  0  0    3    4
#Merc 240D           24.4   4 146.7  62 3.69 3.190 20.00  1  0    4    2
#Merc 230            22.8   4 140.8  95 3.92 3.150 22.90  1  0    4    2
#Some Mercedes       19.2   6 167.6 123 3.92 3.440 18.30  1  0    4    4
#Merc 280C           17.8   6 167.6 123 3.92 3.440 18.90  1  0    4    4
#.....