读取文件夹中的AIS数据集并按分钟进行分割
时间: 2023-06-13 13:02:35 浏览: 28
好的,我可以帮你实现这个功能。首先需要明确一下问题的具体需求和条件:
1. 数据集的格式是怎样的?
2. 按分钟分割的意思是每个文件包含一分钟的数据吗?
3. 数据集的大小是否可以一次性读取到内存中?
假设数据集格式为csv,每个文件包含一秒钟的数据,数据集大小可以一次性读取到内存中。那么下面是实现的代码:
```python
import os
import pandas as pd
# 设置数据集路径和分割后的文件夹路径
data_dir = 'path/to/data'
output_dir = 'path/to/output'
# 遍历数据集文件夹中的所有文件
for file_name in os.listdir(data_dir):
# 读取csv文件
df = pd.read_csv(os.path.join(data_dir, file_name))
# 将时间戳转换为DatetimeIndex
df['Timestamp'] = pd.to_datetime(df['Timestamp'], unit='s')
df = df.set_index('Timestamp')
# 按分钟进行分割
minute_groups = df.groupby(pd.Grouper(freq='1Min'))
# 将每个分组保存为一个新文件
for minute, minute_group in minute_groups:
minute_file_name = f"{file_name[:-4]}_{minute.strftime('%Y%m%d-%H%M%S')}.csv"
minute_group.to_csv(os.path.join(output_dir, minute_file_name))
```
上面的代码中,我们使用了Pandas库来读取和处理csv文件。首先遍历数据集文件夹中的所有文件,对于每个文件,读取数据并将时间戳转换为DatetimeIndex。然后按分钟进行分割,将每个分组保存为一个新文件。新文件的命名方式为原文件名加上时间戳。注意,我们使用了strftime函数将时间戳转换为字符串格式,便于作为文件名的一部分。
相关推荐
















