我有一个如下表(1K多行):分割数据表小的表ř
x1 x2 x3 x4
7809 243638 1 1
7809 243638 1 1
7809 243638 1 1
...
3453 222222 1 0
和我需要拆分此表小的表(这将是在我的环境作为数据帧)基于第二栏x2
。 我试图做split(dat,dat$x2)
和R做对了,但在列表中。
我有一个如下表(1K多行):分割数据表小的表ř
x1 x2 x3 x4
7809 243638 1 1
7809 243638 1 1
7809 243638 1 1
...
3453 222222 1 0
和我需要拆分此表小的表(这将是在我的环境作为数据帧)基于第二栏x2
。 我试图做split(dat,dat$x2)
和R做对了,但在列表中。
如果你
split_list <- split(dat,dat$x2)
你可以用
split_list[[1]]
split_list[[2]]
....
访问分裂结果,以结果
# to a data.frame
df1 <- as.data.frame(split_list[[1]])
# to a table
t1 <- as.table(split_list[[1]])
存储在多个数据集(即使转换我不看不到它的好处)
names1 <- names(split_list)
for(i in seq_along(names1)){
assign(names1[i], split_list[[i]])
}
了解它,以及如何循环700多个结果? – user4751931 2015-04-05 20:10:55
http://stackoverflow.com/questions/25974260/assign-list-of-data-to-variables-in-for-loop – 2015-04-05 23:17:36
正如你自己所说的那样:“R做了**正确的**,但在**列表**”。 R确实做得对,并将其保留在列表格式中,因为用大量数据集污染您的全球环境是错误的。 – 2015-04-05 17:10:14