错误:无法将字符串"X"转换为浮点数64



我只是想使用numpy将文本转换为列表的列表,但是文本包含字符串:'X'

错误:无法将字符串'X'转换为float64.

我有一个包含以下内容的文本文件:

5 3 X X 7 X X X X
6 X X 1 9 5 X X X
X 9 8 X X X X 6 X
8 X X X 6 X X X 3
4 X X 8 X 3 X X 1
7 X X X 2 X X X 6
X 6 X X X X 2 8 X
X X X 4 1 9 X X 5
X X X X 8 X X 7 9

我想用numpy把这个文本转换成一个列表的列表这是我的代码:

import numpy as np
file = input('Enter the file name: '))
list = np.loadtxt(file)
print(list)

预期输出:

[['5','3','X','X','7','X','X','X','X'],
['6','X','X','1','9','5','X','X','X'],
['X','9','8','X','X','X','X','6','X'],
['8','X','X','X','6','X','X','X','3'],
['4','X','X','8','X','3','X','X','1'],
['7','X','X','X','2','X','X','X','6'],
['X','6','X','X','X','X','2','8','X'],
['X','X','X','4','1','9','X','X','5'],
['X','X','X','X','8','X','X','7','9']]

np.loadtxt中指定dtype=str选项

import numpy as np
file = input('Enter the file name: ')
list = np.loadtxt(file, dtype=str)
print(list)

这应该得到:

[['5' '3' 'X' 'X' '7' 'X' 'X' 'X' 'X']
['6' 'X' 'X' '1' '9' '5' 'X' 'X' 'X']
['X' '9' '8' 'X' 'X' 'X' 'X' '6' 'X']
['8' 'X' 'X' 'X' '6' 'X' 'X' 'X' '3']
['4' 'X' 'X' '8' 'X' '3' 'X' 'X' '1']
['7' 'X' 'X' 'X' '2' 'X' 'X' 'X' '6']
['X' '6' 'X' 'X' 'X' 'X' '2' '8' 'X']
['X' 'X' 'X' '4' '1' '9' 'X' 'X' '5']
['X' 'X' 'X' 'X' '8' 'X' 'X' '7' '9']]

最新更新