我知道如何按列名称调用data.frame,但它返回的是数字向量而不是data.frame。如何强制它返回data.frame呢?
data = data.frame(rand1 = rnorm(5, sd = 0.3),rand2 = rnorm(5, sd = 0.3) )
data[,'rand2']
[1] 0.54355118 -0.34235808 0.30914102 -0.06509097 0.29061738
class(data[,'rand2'])
[1] "numeric"
答案 0 :(得分:0)
从您的示例中,您只需使用
即可data = data.frame(rand1 = rnorm(5, sd = 0.3),rand2 = rnorm(5, sd = 0.3) )
data[,'rand2',drop=F]
rand2
1 -0.07895436
2 0.55478780
3 -0.47263459
4 0.17346880
5 0.47885452
class(data[,'rand2',drop=F])
[1] "data.frame"
可以找到data.frames的其他一些好主意here