Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Extract a row from a table object

Tags:

r

row

I want to know how to get a specific row from a table in R. For example,

> a <- c(13,13,      14,14,14,14,14,14,     15,15,15,15,15,15,     16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,     17,17,17,17,17,17,17,     18,18,18,18,18,18,18,18,18,18,18,18,18,18,18,18,18,     19,19,19,19,19,19,19,19,19,19,19,     20,20,20,20,20,20,20,20,20,     21,21,21,21,21,21,21,21,21,21,21,     22,22,22,22,22,22,22,22,22,     23,23,23,24,25,25,27) > table(a) a 13 14 15 16 17 18 19 20 21 22 23 24 25 27  2  6  6 15  7 17 11  9 11  9  3  1  2  1  

How do I extract the last row of the table?

like image 906
CoolKiffings Avatar asked Apr 11 '12 10:04

CoolKiffings


1 Answers

The function str() lets you interrogate the structure of an object

str(table(a)) # 'table' int [1:14(1d)] 2 6 6 15 7 17 11 9 11 9 ... # - attr(*, "dimnames")=List of 1 #  ..$ a: chr [1:14] "13" "14" "15" "16" ... 

Your table object is similar to a vector (it just has some additional tags/attributes). Crucially, you can access the elements in the usual way:

R> b = table(a) ##To get the numerical values R> as.vector(b)  [1]  2  6  6 15  7 17 11  9 11  9  3  1  2  1 ##To get the names R> names(b)  [1] "13" "14" "15" "16" "17" "18" "19" "20" "21" "22" "23" "24" "25" "27" 

Also, we can use standard sub-setting rules

##Get the last element in the named vector R> b[length(b)] 27   1  R> names(b)[length(b)] [1] "27" 
like image 70
csgillespie Avatar answered Oct 14 '22 19:10

csgillespie