将具有二进制数据的多个.dat文件转换为具有相同文件名的.csv

2024-09-29 21:39:38 发布

您现在位置:Python中文网/ 问答频道 /正文

Error description我有一个文件夹,其中包含二进制数据的.dat文件,我想将其解析并写入与.dat文件同名的.csv文件。我可以把一个.dat文件转换成它各自的.csv到我需要的文件夹。在

     import numpy as np
     import pandas as pd
     raw_file= '/home/targetfolder/channel1.dat'
     with open(raw_file, "rb") as f:

              raw_data = np.fromstring(f.read(), dtype=np.float32)
              comb_np_array = np.vstack(raw_data)
              big_frame = pd.DataFrame(comb_np_array)
              big_frame.to_csv("/home/destinationfolder/channel1.csv")

     f.close()

输出单位´文件名.csv 0,-47.418867 1,-47.443828 2,-47.4445311 3,-47.4738281 4,-47.4193871 5,-47.4222221 6,-47.4193878

下面是我遵循的链接:Python: How to save *.dat-files as *.csv-files to new folder

^{pr2}$

但上面给出了一个错误:“预期序列”。请告诉我怎样才能得到想要的结果。在


Tags: 文件csvtoimport文件夹homedataraw
1条回答
网友
1楼 · 发布于 2024-09-29 21:39:38

迭代len(n),但每次都写n。在

for row in range(len(n)):
    writer.writerows(n)

writerows接受序列序列,但您传递的是一个数据帧并期望编写器对其进行迭代,但在您的情况下,数据帧不是序列(python2?)。Here is how you can check this。在

^{pr2}$

您需要iterate over the data frame并写入单元格

for i, row in big_frame.iterrows():
    writer.writerow([i, row[0]]) # 0 is the col name here

相关问题 更多 >

    热门问题