【发布时间】:2018-07-16 08:48:52
【问题描述】:
这是我的第一个问题。
我尝试使用 Python 加载数据文件。
文件demo.txt 类似如下。
12,23,34.5,56,
78,29,33,
44,55,66,78,59,100
(文件的行数不同,每行的列数可能不同。我需要处理很多数据文件)
numpy.loadtxt("demo.txt",delimiter=",")
给出错误消息“could not convert string to float:”。
为了解决这个问题,我尝试使用命令
sed -i -e 's/,\n/,/g' demo.txt
删除每行末尾的换行符以将所有行合并为一行。但是失败了。
但是,在VIM中,可以使用":s/,\n/,/g"来删除换行符。
因此,我的问题是
是否可以在不修改文件的情况下在python中加载数据文件?
1234563每行末尾的换行符将所有行合并为一行?没有所有行的换行符,我可以很容易地用 numpy.loadtxt 读取数据。
最好的问候,
一屏
【问题讨论】:
-
行的列数不同。因此,其他问题中的解决方法在这里不起作用。
-
您想删除换行符吗?你的意思是你想把所有的行合并成一行?还是您只想删除结尾的逗号?
-
对不起,我没有说清楚。是的,将所有行合并为一行——这就是我想要的。然后就很容易被numpy.loadtxt处理了。