我想从一个文本文件(或.tbl文件)中获取数据,并从文件中的两个列打印数据。我得到错误消息-“扫描字符串文本时下线”我尝试了如下操作:
import numpy as np
import matplotlib.pyplot as plt
data = np.loadtxt('uid.txt',
dtype = {
'names':
('HJD', 'RELATIVE_DATE', 'PHASE',
'RELATIVE_FLUX', 'RELATIVE_FLUX_UNCERTAINTY', 'RELATIVE_FLUX_WITHOUT_SYSTEMATICS',
'DIFFERENCE_DATA_VS_MODEL', 'MODEL_FIT', 'MODEL_FIT_WITHOUT_SYSTEMATICS', 'AIRMASS'),
'formats': ('f64', 'f64', 'f64', 'f64', 'f64', 'f64', 'f64', 'f64', 'f64', 'f64')
})
x = data['PHASE']
y = data['RELATIVE_FLUX_WITHOUT_SYSTEMATICS']
xlabel('orbital phase')
ylabel('flux')
plot(x, y, 'go')
plt.show()
我建议使用}方法对于大量数据来说要快得多。有关文档,请参阅此处:https://docs.scipy.org/doc/numpy/reference/generated/numpy.genfromtxt.html和此处:https://pandas.pydata.org/pandas-docs/stable/generated/pandas.read_csv.html。此外,如果不了解数据,很难找出错误的来源。在
pandas.read_csv()
或numpysnp.genfromtxt()
方法,其中{相关问题 更多 >
编程相关推荐