string - 在 Julia 中从字符串转换为 boolean 值

标签 string types boolean julia

我想将"is"/“否”的字符串数组转换为 boolean 类型。

首先,我检查是否存在 NA: convert(Array, datsub[:s734y]) 不起作用,所以有 NA 所以我将 NA 转换为“否” datsub[isna(datsub[:s734y]),:s734y] = "否"

然后这个就起作用了: map(s->s==""||s=="NA"? "No": s, datsub[:s734y]) 所以我有点确定(也通过查看数据集)我只有"is"/“否”值

我将其转换为 boolean 值的代码是: convert(Vector{Bool},map(q->tryparse(Bool,q),datsub[:s734y])) 返回不精确错误

知道为什么我的代码是错误的吗?

附录:类型转换目前对我来说是一个普遍的挫败感。

最佳答案

如果没有可重现的示例,很难理解您正在做的事情,但您可以执行如下操作:

julia> q = ["yes", "no"]

julia> parsebool(s::String) = lowercase(s) == "yes" ? true: false

julia> qbool = Bool[parsebool(x) for x in q]
2-element Array{Bool,1}:
true
false

虽然比使用内置函数稍微多一些工作,但您还可以为遇到的每种类型的字符串值定义自定义逻辑。我使用了三元运算符,所以我假设您只有"is"/“否”。但可以使用 if/elseif/else 轻松扩展此示例,使其适用于您可能接受的任何字符串值系列。

关于string - 在 Julia 中从字符串转换为 boolean 值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37868940/

相关文章:

字符串字典顺序排列和反转

python - 除了 `NoneType` 之外,Python 中还有什么是 `None` 吗?

types - 调用 Go 函数,它接受接口(interface) A 的 slice 和结构 B 的 slice (B 实现 A)

javascript - 字符串数组的逻辑 &&

c# - 使用相同 boolean 值的两种形式

html - 为什么 Visual Studio 警告未终止的字符串常量

c# - 如何在 C# 中将拆分字符串(字符串数组)转换为 double 字符串?

tsql - T-SQL : How to obtain the exact length of a string in characters?

c++ - 在 C++ 中定义类型安全的 "byte"(如 8 位)类型的最现代和惯用的方法是什么?

javascript - 检查三个 boolean 值中的两个是否为真?