使用 Python 从文件导入数据时出现 ValueError

ValueError while importing data from a file using Python

我不断收到 ValueError: could not convert string to float:' '.

我使用的代码是:

import matplotlib.pyplot as plt
import numpy as np
    
X, Y = np.loadtxt('/Users/sul/Desktop/2,54,51PM.txt', delimiter=',', unpack=True)
    
plt.plot(X, Y)
plt.title('Line Graph using NUMPY')
plt.xlabel('X')
plt.ylabel('Y')
plt.show()

该文件包含两列和超过 1000 行,如下所示:

1413.541000000  0.001121856
1413.548812500  0.001122533
1413.556625000  0.001121994
1413.564437500  0.001120641
1413.572250000  0.001120932

我该怎么做才能解决这个问题?

看看你代码中的这一行:

X, Y = np.loadtxt('/Users/sul/Desktop/2,54,51PM.txt', delimiter=',', unpack=True)

如果您的数据文件看起来像您发布的示例,则没有使用逗号作为分隔符。

它似乎在查看这两个由 space 分隔的浮点值并将其解释为字符串。

您需要匹配分隔符。

嗯,显然这些值看起来不是 comma-separated,而是被单个 space 分隔,这会导致错误,因为值被解释为字符串。将 delimiter = ',' 更改为 delimiter = ' ',它应该可以工作。查看以下结果: