【问题标题】:How do I export Python print from loop to different text files?如何将 Python 打印从循环导出到不同的文本文件?
【发布时间】:2018-05-16 10:08:59
【问题描述】:

我正在尝试使用傅里叶滤波器过滤我的实验测量值,该滤波器有效。现在,我在一个文件夹中获得了多个原始数据文件 (.txt),我想对其进行过滤,然后将其放置在不同的文件夹中。

结构如下;

过滤脚本:C:\Users\myname\Desktop\folder1\Scripts

原始数据文件夹:C:\Users\myname\Desktop\folder1\Scripts\Raw_data

过滤的数据文件夹:C:\Users\myname\Desktop\folder1\Scripts\Filtered_data

我的代码是:

import numpy as np
import matplotlib.pyplot as plt
import pandas as pd
from scipy.fftpack import rfft, irfft, fftfreq

data = pd.read_csv(r'C:\Users\myname\Desktop\folder1\Scripts\Raw_data\rawtest_datafile1.txt')

time   = np.linspace(0, 4017, 4018)
signal = data.TG

print(Filter(time, signal, 0.004,  0.0075, False, 0.04)/10)

一维数组中的结果。

现在我想知道如何导入所有文件 rawtest_datafile[i].txt,过滤它们,然后使用循环一个一个地创建一个名为 filterstest_datafile[i].txt 的新文件。

我希望这已经足够清楚了。

【问题讨论】:

标签: python python-3.x export spyder


【解决方案1】:

使用以下示例代码,并根据需要进行修改。

data_file_format="C:\Users\myname\Desktop\\folder1\Scripts\Raw_data\\rawtest_datafile{}.txt";

output_file_format="C:\Users\Ruben\Desktop\BEP\Scripts\Filtered_data\output_file{}.txt";

for i in range(1,10):
    datafile=data_file_format.format(i);
    outputfile=output_file_format.format(i);
    data = pd.read_csv(datafile);
    time   = time = np.linspace(0, 4017, 4018)
    signal = data.TG
    print_to_file(Filter(time, signal, 0.004,  0.0075, False, 0.04)/10,outputfile);

注意: 1. print_to_file 是需要定义的函数。它应该有两个输入,你需要打印的数据和文件路径。

  1. 您需要知道数据文件的数量才能运行 for 循环。否则你应该使用 os 模块。

【讨论】:

    【解决方案2】:

    您可以在 Python 的 os 模块中使用 os.listdir() 来获取目录的内容。在此之后,使用来自同一模块的 isfile 检查它是否是一个文件。如果是文件,则进行过滤操作,并将文件写入目的地。

    import os
    
    for content in os.listdir(source_path):
        if os.path.isfile(os.path.join(source_path, content)):
            # read file and perform filter operation
            new_file = "filtered" + content
            # write data to os.path.join(dest_path, new_file)
    

    希望这会有所帮助。

    【讨论】:

      猜你喜欢
      • 2016-02-08
      • 1970-01-01
      • 2016-07-27
      • 2021-07-17
      • 2014-06-16
      • 1970-01-01
      • 2021-09-13
      • 1970-01-01
      • 2014-02-16
      相关资源
      最近更新 更多