gpt4 book ai didi

julia - 在 Julia 脚本中遇到 plot 和 vcat 问题

转载 作者:行者123 更新时间:2023-12-04 14:58:24 24 4
gpt4 key购买 nike

我一定是做错了什么。我有一个使用 vcatplot 的 Julia 脚本(如下)。当我运行脚本时,vcat 返回一个空的 DataFrame。另一个函数调用 plot,但没有生成任何图。

当我在终端窗口中手动键入命令时,命令运行正常。

如有任何帮助,我们将不胜感激。

f_l = file_list[start_row_num:end_row_num] # Build a dataframe containing the data
len = length(f_l)
tmp_stock_df = DataFrame(CSV.File(f_l[1]))
vcat(s_d_df, tmp_stock_df)
println(s_d_df)
for i = 2:len
tmp_stock_df = DataFrame(CSV.File(f_l[i]))
tmp_stock_df.quote_datetime = map((x) -> DateTime(x, "yyyy-mm-dd HH:MM:SS"), tmp_stock_df.quote_datetime)
DataFrames.vcat(s_d_df, tmp_stock_df)
end

最佳答案

很难说您在手动输入命令时有何不同,但在我看来,这段代码会产生您正在寻找的结果。除了 s_d_df 未定义这一事实外,vcat 不会改变其参数,因此您永远不会真正添加到您的 DataFrame 中:

julia> using DataFrames

julia> df1 = DataFrame(a = rand(2), b = rand(2)); df2 = DataFrame(a = rand(2), b = rand(2));

julia> vcat(df1, df2)
4×2 DataFrame
Row │ a b
│ Float64 Float64
─────┼────────────────────
1 │ 0.918298 0.343344
2 │ 0.538763 0.188229
3 │ 0.347177 0.385166
4 │ 0.18795 0.98408

julia> df1
2×2 DataFrame
Row │ a b
│ Float64 Float64
─────┼────────────────────
1 │ 0.918298 0.343344
2 │ 0.538763 0.188229

您可能希望 s_d_df = vcat(s_d_df, tmp_stock_df) 分配连接的结果。

在相关说明中,看起来您只有一个文件列表 f_l,其中存储在您的系统中的不同 csv 文件要读入单个 DataFrame,在这种情况下,您可以将整个循环替换为:

s_d_df = vcat(CSV.read.(f_l, DataFrame)...)

(也可能在 CSV.read 中使用 dateformat = "yyyy-mm-dd HH:MM:SS" kwarg 在读取时直接解析日期文件)。

关于julia - 在 Julia 脚本中遇到 plot 和 vcat 问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/67436553/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com