Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

What is about the first column in R's dataset mtcars?

I think I am missing a fundamental concept about R's data frames.

head(mtcars)
                   mpg cyl disp  hp drat    wt  qsec vs am gear carb
Mazda RX4         21.0   6  160 110 3.90 2.620 16.46  0  1    4    4
Mazda RX4 Wag     21.0   6  160 110 3.90 2.875 17.02  0  1    4    4
Datsun 710        22.8   4  108  93 3.85 2.320 18.61  1  1    4    1
Hornet 4 Drive    21.4   6  258 110 3.08 3.215 19.44  1  0    3    1
Hornet Sportabout 18.7   8  360 175 3.15 3.440 17.02  0  0    3    2
Valiant           18.1   6  225 105 2.76 3.460 20.22  1  0    3    1

The names of the cars here. Is this a column? I don't think so, because I am not able to access them via mtcars[,1]. And there is no column name/header for it.

How could I create a data frame like that? How could I use that special column e.g. to describe the data in a plot for example?

like image 248
buhtz Avatar asked Aug 17 '16 07:08

buhtz


People also ask

How many columns are in the Mtcars data frame?

What is this? We can see that the dataset has 32 rows and 11 columns.

How do I get the first column of a Dataframe in R?

To select a column in R you can use brackets e.g., YourDataFrame['Column'] will take the column named “Column”. Furthermore, we can also use dplyr and the select() function to get columns by name or index. For instance, select(YourDataFrame, c('A', 'B') will take the columns named “A” and “B” from the dataframe.

How do I name the first column in R?

To rename a column in R you can use the rename() function from dplyr. For example, if you want to rename the column “A” to “B”, again, you can run the following code: rename(dataframe, B = A) .

What is the average mileage of a car in the Mtcars dataset?

"Answer: 200000 per mile is the average mileage of a car in the mtcars given dataset.


2 Answers

A shorter one liner argument with data.tablePackage will make the rowname a column.

library(data.table)
setDT(mtcars, keep.rownames = TRUE[])

head(mtcars)

      rn           mpg cyl disp  hp drat    wt  qsec vs am gear carb
Mazda RX4         21.0   6  160 110 3.90 2.620 16.46  0  1    4    4
Mazda RX4 Wag     21.0   6  160 110 3.90 2.875 17.02  0  1    4    4
Datsun 710        22.8   4  108  93 3.85 2.320 18.61  1  1    4    1
Hornet 4 Drive    21.4   6  258 110 3.08 3.215 19.44  1  0    3    1
Hornet Sportabout 18.7   8  360 175 3.15 3.440 17.02  0  0    3    2
Valiant           18.1   6  225 105 2.76 3.460 20.22  1  0    3    1
like image 87
Flo Avatar answered Oct 05 '22 22:10

Flo


This works too using tibble.

library(tibble)
mtcars %>%
  rownames_to_column(var="carnames")
like image 21
william3031 Avatar answered Oct 06 '22 00:10

william3031