我正在尝试调用包含字符串的文件,这样我就可以计算出一种类型的字符串中有多少种,但是当我收到错误消息,即字符串无法转换为浮点数时。该文件很大,但是一小部分看起来像{K5,M2 K5,M0,M0,M2}。然后,我想计算每个匹配条目有多少个。

file = 'IMF.txt'
spec_type = np.loadtxt(file, skiprows = 1, usecols = 1)

最佳答案

默认情况下,np.loadtxt需要数字数据。您可以为长度为2的字符串指定dtype='S2'

from io import StringIO
import numpy as np

file = StringIO("""
0 K5
1 M2
3 K5
5 M0
6 M0
7 M2""")

# replace file with 'IMF.txt'
spec_type = np.loadtxt(file, skiprows=1, usecols=1, dtype='S2')


返回值:

print(spec_type)

array([b'K5', b'M2', b'K5', b'M0', b'M0', b'M2'], dtype='|S2')

关于python - 无法将字符串转换为浮点数:“K5”,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/53696327/

10-09 04:55