Regarding this:
> I was somewhat surprised that I had to reference the fields in the tuple
by position

there are two ways to do it:
1) `value...` will splat the arguments
2) `[datetime(year,month,day) for (year,month,day) in zip(test[:Year],
test[:Month], test[:DayofMonth])]` will do what you want. (note the parens
around the second (year,month,day)




On Tue, Jul 1, 2014 at 9:44 PM, Randy Zwitch <[email protected]>
wrote:

> Sorry, not following...try value how?
>
>
> On Tuesday, July 1, 2014 9:40:46 PM UTC-4, Isaiah wrote:
>
>> Try "value..."
>>
>>
>> On Tue, Jul 1, 2014 at 9:37 PM, Randy Zwitch <[email protected]>
>> wrote:
>>
>>> I have a data frame where the year, month, day, hour, etc. are in
>>> different columns. I want to use Datetime.jl to make timestamps, then do
>>> some processing.
>>>
>>> I tried to attack the problem like the following (which is to say,
>>> Python-style), but it didn't work:
>>>
>>> test[:start_date] = [datetime(year,month,day) for year,month,day in
>>> zip(test[:Year], test[:Month], test[:DayofMonth])]
>>>
>>> The working solution:
>>>
>>> test[:start_date] = [datetime(value[1],value[2],value[3]) for value in
>>> zip(test[:Year], test[:Month], test[:DayofMonth])]
>>>
>>> I was somewhat surprised that I had to reference the fields in the tuple
>>> by position, when syntax like a,b,c = (1,2,3) works elsewhere. Is there
>>> something I'm missing/forgetting? Is there a better way to use multiple
>>> columns from a data frame in a function to return a new column in the data
>>> frame?
>>>
>>
>>

Reply via email to