You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Julia DataFrame无法新增filename变量问题求助

问题解决方法

报错原因

  • 包导入错误:你使用的using DataFrame写法有误,处理表格的官方包名是DataFrames,末尾少写了s
  • 核心逻辑错误:CSV.File()返回的是专用的CSV迭代读取对象,不是可修改的DataFrame结构,无法直接用索引语法给它新增列

修正后可运行代码

using DataFrames
using Queryverse
using VegaLite
using Statistics
using CSV
using Glob

path = "D:\\Udemy\\FInancial_Engineering_Lazy_Programmer\\Yfinance_Data"
files = glob("*.csv", path)

df_com = DataFrame()
for file in files
    # 读取CSV后先转为DataFrame结构
    df = CSV.read(file, DataFrame)
    # 用内置函数提取无后缀文件名,兼容不同系统的路径分隔符
    filename = splitext(basename(file))[1]
    df[!, :filename] .= filename
    append!(df_com, df)
end

优化写法

如果所有CSV结构一致,可改用更高效的写法,避免循环append的性能损耗:

df_com = mapreduce(vcat, files) do file
    df = CSV.read(file, DataFrame)
    df.filename .= splitext(basename(file))[1]
    df
end

内容的提问来源于stack exchange,提问作者Harneet.Lamba

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.06 16:36:05