如何在一组二维数组中剔除未知字符串?

在标准化处理一组比较大的数据,但是数据组中存在一些字符串导致报错

#标准化处理数据,数据是在Excel中读取出来的,x是二维数组
x_scaled = preprocessing.scale(x)
y_scaled = preprocessing.scale(y)


#报错
ValueError: could not convert string to float: 'Intf Shut'

因此我需要把数组中的字符串剔除,用剩下的数据进行数据处理。
我能想到的解决思路是遍历整个数组,找出并删除字符串,字符串在数组二维内部,不知道怎么去筛查,刚接触编程还在入门阶段,写不出自己想实现的效果,希望能得到点拨。

a = [[1, 2, 'a'], [2, 3, 'b'], [3, 4, 'c']]
for i in range(len(a)):
for j in range(len(a[i])):
if type(a[i][j]) == str:
a[i].pop(j)
print(a)
希望这段代码能对你有帮助

list类型 isinstance(object,classinfo)判断object是否属于classinfo类型 注意删除后i-1
dataframe类型 df['temp'] = df['temp'].astype(int)

通过在线翻译得知报错原因如下:

img


传入无效的参数:无法将字符串转换为浮点:“Intf Shut”
在检查代码时,优先看一下传入的参数:是否有换行符 ,制表符,空字符串 !如果没有看到,在看一下调用的格式
是否正确!总之,关注一下参数,字符串等关键位置!

ValueError: could not convert string to float 发生这个错误的通常原因都是:要转换成浮点数的字符串中包含 非数字字符 的东西,比如空字符串、字母都不可以转换为浮点数。
1.检查一下自己的字符串内容,注意里面是否有换换行符 \n,制表符 \t 或空字符串 ‘ ’
如果有,请删除!
2.调用的文件中数据格式是否正确,特别是Excel及txt文件,容易出现额外的“ ”,要把它们删去程序才可以正常运行!

如有帮助,还请采纳!谢谢!