将数据框分隔为各个列

时间:2016-04-08 17:36:03

标签: r dataframe

这似乎是一个相当基本的问题,但我已经坚持了一段时间了。非常感谢任何帮助。

我有一个包含大量列的数据框,并希望将其拆分为各个列,并保留名称。例如,给定以下代码中的数据框df

df = data.frame(a=runif(10),b=runif(10),c=runif(10))

df
#           a         b          c
# 1  0.2779563 0.1412121 0.81080549
# 2  0.9312947 0.2074081 0.23266019
# 3  0.2001917 0.8405399 0.79820815
# 4  0.3866977 0.4979865 0.57364238
# 5  0.2644731 0.2714174 0.24188040
# 6  0.1973641 0.3027505 0.01130486
# 7  0.7657212 0.1042998 0.69974274
# 8  0.6424601 0.4570072 0.91322978
# 9  0.3754743 0.5670109 0.03320163
# 10 0.5413522 0.2577974 0.48067775

我希望有一个函数可以基本完成以下代码行单独执行的操作(将df的每一列的值分配给同名的向量) -

a <- df$a; b <- df$b; c <- df$c

a
# [1] 0.2779563 0.9312947 0.2001917 0.3866977 0.2644731 0.1973641 0.7657212
# [8] 0.6424601 0.3754743 0.5413522

有什么想法吗?

1 个答案:

答案 0 :(得分:3)

很难想象一个好的用例,但你可以使用

list2env(unclass(df), .GlobalEnv)