python - 将 .dat 文件转换为数组

标签 python

我有一个从 MATLAB 生成的 .dat 文件(带有浮点值)。我需要将它转换为包含与 .dat 文件中相同的行数和列数的数组。谁能建议这样做的方法?我要删除的每一行末尾都有一个 \n 。读入 Python 的 .dat 文件如下所示:

12,18\n42,17\n60,16\n86,17\n120,17\n137,12\n169,10\n189,14\n215,9\n248,11\n273,12\n301,17\n319,8\n345,17\n378,14\n403,10\n423,10\n453,18\n483,10\n507,15\n10,43\n43,44\n60,38\n96,41\n114,41\n139,41\n168,43\n189,40\n215,37\n248,45\n268,45\n301,37\n321,35\n

我希望输出采用以下格式:

12,18
42,17
...

其中 12,4218,17 在不同的列中。

最佳答案

数组是什么意思?

with open('datafile','r') as f:
    rows=[map(float,L.strip().split(',')) for L in f]  # list of lists

arr=np.array(rows)  #Numpy array (assuming you `import numpy as np`)

或使用 numpy.loadtxt :

arr=np.loadtxt('datafilename',delimiter=',')

关于python - 将 .dat 文件转换为数组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11247137/

相关文章:

python - 最好的做法是包含一个 else : pass statement at the end of a Python if or if/elif statement?

python - 如何在存在联合条件和两个单独条件的 sframe 中提取行?

python - 没有从 bittorrent 对等握手中接收到任何数据

python - 生成任意 2 列的所有二次组合

python:确定列表 A 是否包含与列表 B 不同的值

python - 转换字典中的嵌套列表(列表中的每个元素必须是字典中的键)

python - 如何处理BDD中的环境先决条件?

python - 如何使用 set_random_seed 获得相同的结果

python - 在数据框中使用嵌套 if 条件

python - 当一个系列被传递给 Numpy exp() 函数时,为什么会返回一个系列?