我有一个txt文件,其中包含3列浮点数,需要导入,但需要用列和空行分隔。
例如,txt文件数据如下所示:
1.0 1.1 1.2
1.3 1.4 1.5
2.0 2.1 2.2
2.3 2.4 2.5
我需要的数据导入到Python一样
column 1-1: 1.0, 1.3
column 2-1: 1.1, 1.4
column 3-1: 1.2, 1.5
column 1-2: 2.0, 2.3
column 2-2: 2.1, 2.4
column 3-2: 2.2, 2.5
我能够导入txt文件并使用a,b,c = np.loadtxt('file.txt', dtype=float, unpack=True)
按列分隔,但这种方法不读取空行,我不能进一步用空行分隔数据。
3条答案
按热度按时间mpgws1up1#
为什么不自己做个算法呢在我看来,以某种方式配置numpy或为其获取模块要容易得多。我不得不花5分钟来思考和做一个算法
这个算法不使用numpy(我使用的是在线解释器rn,所以我不能安装包),而且它也很慢,所以你自己做一个版本会更好。
flvlnr442#
您可以尝试:
图纸:
7qhs6swi3#
如果你想的话,你可以用stdlib本身来做:
产出:
我使用
groupby
对空行之间的行进行分组。然后,对于组中的每一行,我将它们转换为浮点数列表而不是字符串。现在转换:到
你需要
zip()
他们。