我正在尝试手动创建一个Orange表,但遇到了一些问题。
我的代码:
new_domain = Domain([
ContinuousVariable("NAME"),
ContinuousVariable("AGE"),
DiscreteVariable("BLOOD TYPE", list(["A+", "A-", "B+", "B-", "AB+", "AB-", "O+", "O-"]))
])
data = np.array([
["Joe", "25", "B-"],
["Marc", "30", "AB+"],
["Martin", "28", "O-"]
], dtype=object)
orangeTable = Table.from_numpy(new_domain, X=data)然而,我得到了这个错误:
ValueError: could not convert string to float: 'Joe'我不明白它为什么要尝试这种转换,出了什么问题?我刚刚开始,所以在这一点上并不是所有的事情都是清楚的。
发布于 2020-12-14 08:40:53
错误消息将告诉您需要知道的所有内容:
ValueError:无法将字符串转换为浮点型:'Joe‘
问题是numpy数组内部只能包含浮点(数值)值。在这里,您需要将非数字(字符串)值包含到数组中。
如果你想创建一个像上面一样的“矩阵”对象,包括字符串数据类型和数字,你需要构建一个熊猫数据框。
https://stackoverflow.com/questions/63028927
复制相似问题