There's also the each_replacena(dataframe[:col], replacement) function, but 
that only operates on columns and doesn't appear to replace in-place. A 
straightforward in-place replacement would look something like: 

function replacena!(dframe::DataFrame, replacement::Any)
  nrows, ncols = size(dframe)
  for j = 1:ncols; for i = 1:nrows
    if isna(dframe[i,j]); dframe[i,j] = replacement; end
    end
  end
end

On Wednesday, September 9, 2015 at 1:42:37 PM UTC-5, Cedric St-Jean wrote:
>
> Just found the DataFrames.isna() function, so that's solved, only the 
> iteration question remains.
>
> On Wednesday, September 9, 2015 at 2:26:23 PM UTC-4, Cedric St-Jean wrote:
>>
>> In 0.3, what's the best way of replacing all NA with a given value (eg. 
>> 0)? Pandas has df.fillna. I've noticed that
>>
>> isnan(DataFrames.NA)
>>
>> is undefined and 
>>
>> DataFrames.NA == DataFrames.NA
>>
>> is NA. The docs say it's a singleton, so I assume that I should use === 
>> to check if it's NA? Likewise, how should I iterate over all elements? I 
>> was disappointed that `map(fun, df)` is not defined (is that an omission? 
>> it's defined for matrices). Should I just go over all columns one by one?
>>
>> Cédric
>>
>

Reply via email to