问题
I have a data frame with several rows. I want to select some rows with specific rownames (such as stu2,stu3,stu5,stu9
) from this dataframe. The input example dataframe is as follows:
attr1 attr2 attr3 attr4
stu1 0 0 1 0
stu2 -1 1 -1 1
stu3 1 -1 0 -1
stu4 1 -1 1 -1
stu5 -1 1 0 1
stu6 1 -1 1 0
stu7 -1 -1 -1 1
stu8 1 -1 0 -1
stu9 -1 -1 1 -1
stu10 -1 1 0 1
Expected output:
attr1 attr2 attr3 attr4
stu2 -1 1 -1 1
stu3 1 -1 0 -1
stu5 -1 1 0 1
stu9 -1 -1 1 -1
回答1:
Assuming that you have a data frame called students
, you can select individual rows or columns using the bracket syntax, like this:
students[1,2]
would select row 1 and column 2, the result here would be a single cell.students[1,]
would select all of row 1,students[,2]
would select all of column 2.
If you'd like to select multiple rows or columns, use a list of values, like this:
students[c(1,3,4),]
would select rows 1, 3 and 4,students[c("stu1", "stu2"),]
would select rows namedstu1
andstu2
.
Hope I could help.
回答2:
You can also use this:
DF[paste0("stu",c(2,3,5,9)), ]
回答3:
df <- data.frame(x=rnorm(10), y=rnorm(10))
rownames(df) <- letters[1:10]
df[c('a','b'),]
来源:https://stackoverflow.com/questions/18933187/how-to-select-some-rows-with-specific-rownames-from-a-dataframe