不应该进行滚动平均,应该将每个窗口的第1个数据平均写到第一行,第2个、第3个以此类推
时间: 2024-04-15 22:30:44 浏览: 25
非常抱歉之前的回答有误解,让我来为您提供正确的代码。
```python
import os
import pandas as pd
def tsa_processing(input_folder, output_folder, window_size):
# 检查输出文件夹是否存在,若不存在则创建
if not os.path.exists(output_folder):
os.makedirs(output_folder)
# 遍历输入文件夹中的所有文件
for root, dirs, files in os.walk(input_folder):
for file in files:
if file.endswith(".csv"):
# 读取CSV文件
input_path = os.path.join(root, file)
df = pd.read_csv(input_path)
# 执行时域同步平均处理
tsa_df = pd.DataFrame()
for i in range(window_size):
tsa_df[i] = df.iloc[i::window_size].mean(axis=1)
# 构建输出文件路径
output_file = os.path.splitext(file)[0] + "_tsa.csv"
output_path = os.path.join(output_folder, output_file)
# 将处理后的数据写入新的CSV文件
tsa_df.to_csv(output_path, index=False)
```
在上述代码中,我们使用了一个循环来处理窗口中每个索引位置的数据,然后计算平均值,并将结果存储在新的DataFrame中。最后,我们将处理后的数据写入新的CSV文件。
请根据需要调整窗口大小和文件路径。同样,请确保您已安装pandas库(可以使用`pip install pandas`命令进行安装)。
希望这次回答能满足您的要求!如果还有其他问题,请随时提问。