私は合計で6つのリスト(l1
、l2
、l3
、l4
、l5
、l6
)を持っており、各リストには、私は12個のデータフレーム(df1
、df2
、df3
、...、df10
、df11
、df12
)を持っています。私はすべてのリストを分割したいと思います。これは私が試みたものです。データフレームを含むリストを個々のデータフレームに分割するにはどうすればよいですか?
split_df<-function(list){
for (i in 1:length(list)){
assign(paste0("df",i),list[[i]])}
}
これは、forループのみを使用する場合にのみ機能します。しかし、それは機能で動作しません。
l1<-list(data.frame(matrix(1:10,nrow=2)),data.frame(matrix(1:4,nrow=2)))
split_df(l1)
df1
Error: object 'df1' not found
df2
Error: object 'df2' not found
しかし、機能のない
は:for (i in 1:length(l1)){
assign(paste0("df",i),l1[[i]])}
df1
# X1 X2 X3 X4 X5
# 1 1 3 5 7 9
# 2 2 4 6 8 10
df2
# X1 X2
# 1 1 3
# 2 2 4
どのように私はこれを是正ん
は、L1、のは、以下のリストを見てみましょうか?
'list2env(mylst、.GlobalEnv)'を試したことがありますか? – lukeA
@lukeA私は 'list2env(l1、.GlobalEnv)'を試みました。これは 'list2env(l1、.GlobalEnv)のエラーを返します。 名前(x)はxと同じ長さの文字ベクトルでなければなりません。 – HNSKD
答えはここです、http://stackoverflow.com/questions/12215032/use-複数のデータフレームへのループからスプリットへのリスト@ptocquinの答えを見て、あなたが望むものだと思う。 – user1945827