如何使用 Julia 循环生成多个 DataFrame
How to generate many DataFrames with a loop using Julia
我想知道在循环中同时生成多个 DataFrame 的最有效方法是什么。
我不知道怎么做,但输出应该是这样的:
df_1 = 1×3 DataFrame
│ Row │ var1 │
│ │ String │
├─────┼──────────────┼
│ 1 │ b │
│ 2 │ a │
│ 3 │ c │
df_2 = 1×3 DataFrame
│ Row │ var1 │
│ │ String │
├─────┼──────────────┼
│ 1 │ h │
│ 2 │ j │
│ 3 │ k │
etc etc
因此,DataFrame
的名称应由循环的迭代 (df_1, df_2
) 决定。
欢迎任何帮助!
提前致谢。
我建议您使用例如理解而不是像这样:
julia> df = [DataFrame(var1=rand(3)) for i in 1:3]
3-element Vector{DataFrame}:
3×1 DataFrame
Row │ var1
│ Float64
─────┼──────────
1 │ 0.402916
2 │ 0.562662
3 │ 0.256056
3×1 DataFrame
Row │ var1
│ Float64
─────┼──────────
1 │ 0.978262
2 │ 0.898357
3 │ 0.71393
3×1 DataFrame
Row │ var1
│ Float64
─────┼──────────
1 │ 0.634487
2 │ 0.813718
3 │ 0.113087
然后你可以select你想要的数据框使用索引,例如:
julia> df[1]
3×1 DataFrame
Row │ var1
│ Float64
─────┼──────────
1 │ 0.402916
2 │ 0.562662
3 │ 0.256056
julia> df[2]
3×1 DataFrame
Row │ var1
│ Float64
─────┼──────────
1 │ 0.978262
2 │ 0.898357
3 │ 0.71393
julia> df[3]
3×1 DataFrame
Row │ var1
│ Float64
─────┼──────────
1 │ 0.634487
2 │ 0.813718
3 │ 0.113087
可以按照您要求的方式使用动态命名定义变量,但我不推荐这样做,因为它很容易导致您的代码出现错误。
我想知道在循环中同时生成多个 DataFrame 的最有效方法是什么。
我不知道怎么做,但输出应该是这样的:
df_1 = 1×3 DataFrame
│ Row │ var1 │
│ │ String │
├─────┼──────────────┼
│ 1 │ b │
│ 2 │ a │
│ 3 │ c │
df_2 = 1×3 DataFrame
│ Row │ var1 │
│ │ String │
├─────┼──────────────┼
│ 1 │ h │
│ 2 │ j │
│ 3 │ k │
etc etc
因此,DataFrame
的名称应由循环的迭代 (df_1, df_2
) 决定。
欢迎任何帮助! 提前致谢。
我建议您使用例如理解而不是像这样:
julia> df = [DataFrame(var1=rand(3)) for i in 1:3]
3-element Vector{DataFrame}:
3×1 DataFrame
Row │ var1
│ Float64
─────┼──────────
1 │ 0.402916
2 │ 0.562662
3 │ 0.256056
3×1 DataFrame
Row │ var1
│ Float64
─────┼──────────
1 │ 0.978262
2 │ 0.898357
3 │ 0.71393
3×1 DataFrame
Row │ var1
│ Float64
─────┼──────────
1 │ 0.634487
2 │ 0.813718
3 │ 0.113087
然后你可以select你想要的数据框使用索引,例如:
julia> df[1]
3×1 DataFrame
Row │ var1
│ Float64
─────┼──────────
1 │ 0.402916
2 │ 0.562662
3 │ 0.256056
julia> df[2]
3×1 DataFrame
Row │ var1
│ Float64
─────┼──────────
1 │ 0.978262
2 │ 0.898357
3 │ 0.71393
julia> df[3]
3×1 DataFrame
Row │ var1
│ Float64
─────┼──────────
1 │ 0.634487
2 │ 0.813718
3 │ 0.113087
可以按照您要求的方式使用动态命名定义变量,但我不推荐这样做,因为它很容易导致您的代码出现错误。