You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何解决使用NumPy加载.dat文件时的‘got 4 columns instead of 7’错误?

解决numpy加载.dat文件的列数不匹配错误

问题根源

你设置的skip_header=8完全错了!从你贴出的文件内容来看,只有2行以;开头的注释行,强行跳过8行的话,numpy会把数据行当成表头解析——表头行里的括号和空格会被拆成7个“列名”,但实际数据只有4列,自然会报got 4 columns instead of 7的错误。

修正后的代码

import numpy as np
import matplotlib.pyplot as plt

# 只跳过2行注释,去掉多余的skip_footer(你提供的内容里不需要)
data = np.genfromtxt('Data.dat', comments=';', skip_header=2, names=True, dtype=None)
print(data)

补充说明

  • names=True会自动把注释后的第一行(即time (s) motorpos (steps) azimuth (deg) signal_magnitude)作为列名,numpy默认会将连续空白作为分隔符,无需额外指定。
  • 如果你的实际文件确实有8行注释,那要检查第8行之后的表头行是否和数据行列数一致,确保表头是4个用空白分隔的字段(避免括号和空格被误拆成多个列)。

内容的提问来源于stack exchange,提问作者Hubear

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.21 10:34:59