Добавить столбец DateTime в существующий фрейм данных - PullRequest
1 голос
/ 19 сентября 2019

У меня есть следующий DataFrame:

using DataFrames, Dates

df = DataFrame( A=Int[], B=Int[] )
push!(df, [1, 10])
push!(df, [2, 20])
push!(df, [3, 30])

df[!, :C] .= DateTime()

for r in eachrow(df)
    # Super complex function, simplified for example
    r.C = now() + Day(r.A)
end

Но df[!, :C] .= DateTime() не создает столбец с датой DateTime (я хочу просто выделить столбец, фактические DateTimes будут заполнены для i в каждом цикле строки).

Ответы [ 2 ]

2 голосов
/ 19 сентября 2019

Хотя @ ответ Даниэля является правильным на вопрос в соответствии с вопросом.

Вы можете заменить цикл for на map и избежать необходимости предварительного выделения.

df.C = map(eachrow(df) do r
    # Super complex function, simplified for example
    return now() + Day(r.A)
end
2 голосов
/ 19 сентября 2019

Нет способа DateTime(), попробуйте

df[!, :C] .= DateTime(0)

.

...