dataframe - 将 .txt 作为日期类型读入 Julia DataFrame

标签 dataframe julia

有没有办法将文本文件中的日期(“2000-01”)变量作为日期直接读取到 Julia DataFrame 中?据我所知,没有这方面的文档。

df = readtable("path/dates.txt", eltypes = [Date, Date])

这不起作用,尽管它看起来应该起作用。我通常的过程是将日期作为字符串读取,然后循环每一行以创建一个新的日期变量。现在,这已经成为我的一些流程的瓶颈,与数据帧的大小有关。

我通常的流程是做这样的事情:

full_df[:real_date] = Date(full_df[:temp_dte_string], "m/d/y")

谢谢

最佳答案

我认为目前没有任何方法可以像您的第一个建议代码那样一步完成加载。但是,您可以通过创建 DateFormat 对象并用它而不是字符串调用 Date 来稍微加快第二种方法的速度。 (这已被简要提及here。)

dfmt = Dates.DateFormat(“m/d/y”)
full_df[:real_date] = Date(full_df[:temp_dte_string], dfmt)

(出于某种原因,我认为 Date 没有矢量化,并且一直在我所有代码的 for 循环中执行此操作。哎呀。)

删除变量是指删除一列还是一行?如果您指的是前者,那么还有其他一些方法可以做到这一点,包括诸如

function vectorin(a, b) #IMHO this should be in base
    bset = Set(b)
    [i in bset for i in a]
end
df = DataFrame(A1="", A2="", A3="", D="", E="", F="") #Some long list of columns 
badCols = [:D, :F] #Some long list of columns you want to remove
df = df[names(df)[!vectorin(names(df), badCols)]]

有时我会读取包含很多额外列的 csv 文件,然后执行类似的操作

df = readtable("data.csv")
df = df[[:Only, :the, :cols, :I, :want]]

关于dataframe - 将 .txt 作为日期类型读入 Julia DataFrame,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31637556/

相关文章:

r - 如何在 R 中压缩多个 CSV 文件?

python - 如何仅显示值大于 x 的列

html - 如何更改 Franklin.jl 中的相对路径?

java - 找不到支持运行固定数量的步骤然后暂停的语言(-解释器)

python - 融化 Pandas 数据框

pandas - 用 numpy 数组值填充 Pandas 列 NaN

python - 以列格式将一个表的输出合并到另一个表

arrays - 在 Julia 中使用预分配数组的函数上使用自动微分

julia - 如何告诉 Flux.jl 不使用 GPU?

使用 Julia 进行数据库抽象