如何在朱莉娅的浮动和字符向量中标记浮动

时间:2015-08-09 17:33:27

标签: julia

我有一个浮动和字符的混合向量,我从文本文件流式传输。此向量正在以字符串形式读入。我的问题是我只想解析浮点数并忽略字符。我怎样才能做到这一点?

v = "Float_or_Char"
if isblank(v) == false   # <-- v might be blank as well
    Parse(Float64,v)  # <-- only if v is a Float (how do I do this?)
end

1 个答案:

答案 0 :(得分:4)

假设x是一个字符串向量,其中一些是浮点字符串,其余是实际字符串,你可以做类似的事情

for i in 1:length(x)
    f = NaN
    try
        f = float(x[i])
        println("$i is a float")
    catch
        println("$i isn't a float")
    end
end

如果您正在使用Julia 0.4(尚未发布),如果您只想使用新x类型和新方法Nullable来自tryparse的花车,您可能会非常喜欢

maybe_floats = map(s->tryparse(Float64,s), x)
floats = map(get, filter(n->!isnull(n), maybe_floats))