The answer is that vectors do not have growth names, although they may have names.
When you access a column as a list item, R does not take the additional step of going through the names of the growths to the names of the vector:
> dfrm$v1 [1] 1 2 3 > dfrm[["v1"]] [1] 1 2 3 > dfrm[,"v1"] [1] 1 2 3 > dfrm[,1] [1] 1 2 3 > names(dfrm$v1) NULL
Note that this is probably good, since the cases where it is useful are limited, and the overhead of copying names every time the data.frame has an output column is probably not worth it.
If you want to copy them yourself:
> vone <- dfrm$v1 > names(vone) <- rownames(dfrm) > vone AD BP CD 1 2 3
Ari B. Friedman
source share