我有一个文件,其中字段用“:”分隔,子字段用“;”分隔,子字段内的项目用“,”分隔。
我想读它Python。一段时间后,我可能可以逐行阅读,然后拆分所有内容,但我相信这种东西已经存在?
文件的一行:
0 : 16, 250 : 1 : 0.053 :RIG : DIS : 1 : 48, 220; 2 : 42, 241; 2 : 43, 251; 3 : 25, 266; 1 : 36, 287; 2
我实际上尝试过:
Dat = np.genfromtxt(path, delimiter= ':', dtype = None, skip_header = 4, skip_footer = 5, encoding = None)
出于我不明白的原因,它只返回文件的第一列。但是,如果我更改为
delimiter= ','
,它会起作用。这给了我 7 个字段,我实际上可以拆分自己。
然后:
1)你会如何阅读该文件?
2) 使用 np.genfromtxt,为什么我只获得第一列使用 ':' 作为分隔符?
最佳答案
使用 Pandas 的解决方案:
data = pd.read_csv('data.txt',
sep=";|:|,",
header=None,
engine='python')
这将在新列中写入每个值。希望这会有所帮助。
关于Python - 读取具有不同分隔符的数据文本文件,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/51195299/