我有一個如下表(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