从numpy对象数组中删除所有字符串元素可以使用以下方法:
numpy
的dtype
属性检查数组的数据类型,然后使用numpy
的isinstance()
函数检查每个元素是否为字符串类型。将返回的布尔索引数组应用于原始数组,以选择需要保留的元素。import numpy as np
# 创建一个包含字符串和其他类型元素的numpy对象数组
arr = np.array(['apple', 1, 'banana', 2, 'orange'])
# 使用布尔索引选择非字符串元素
arr = arr[~np.array([isinstance(x, str) for x in arr])]
print(arr)
输出:
[1 2]
numpy
的delete()
函数:可以使用numpy
的delete()
函数删除数组中的指定元素。首先,使用numpy
的where()
函数找到所有字符串元素的索引,然后将这些索引传递给delete()
函数以删除这些元素。import numpy as np
# 创建一个包含字符串和其他类型元素的numpy对象数组
arr = np.array(['apple', 1, 'banana', 2, 'orange'])
# 找到所有字符串元素的索引
indices = np.where(np.array([isinstance(x, str) for x in arr]))
# 使用delete()函数删除字符串元素
arr = np.delete(arr, indices)
print(arr)
输出:
[1 2]
这些方法可以帮助您从numpy对象数组中删除所有字符串元素。请注意,以上示例中的代码仅展示了如何删除字符串元素,并不涉及云计算或特定的云计算产品。
领取专属 10元无门槛券
手把手带您无忧上云