Python 将文件保存到多个不同的CSV文件中

Python 将文件保存到多个不同的CSV文件中,python,pandas,Python,Pandas,这是一些生成随机时间序列数据的代码。最终,我试图将每天的数据保存到单独的CSV文件中 import pandas as pd import numpy as np from numpy.random import randint np.random.seed(10) # added for reproductibility

这是一些生成随机时间序列数据的代码。最终,我试图将每天的数据保存到单独的CSV文件中

import pandas as pd 
import numpy as np 
from numpy.random import randint 

np.random.seed(10)  # added for reproductibility                                                                                                                                                                 

rng = pd.date_range('10/9/2018 00:00', periods=1000, freq='1H') 
df = pd.DataFrame({'Random_Number':randint(1, 100, 1000)}, index=rng)
我可以使用以下内容打印每天的数据:

for idx, days in df.groupby(df.index.date):
    print(days)
但是,我如何将单个CSV文件合并到一个目录
CSV
中,每个文件都以月和日的第一个时间戳条目命名?(下面的代码不起作用)


您可以迭代所有可用的天数,过滤数据帧,然后保存

# iterate over all available days 
for date in set(df.index.date):  

    # filter your dataframe    
    filtered_df = df.loc[df.index.date == date].copy()

    # save it
    filename = date.strftime('%m_%d')  # filename represented as 'month_day'
    filtered_df.to_csv(f"./csv/{filename}.csv")  

什么不起作用?你能准确指出你面临的错误吗?你能解释一下为什么内部
for
循环吗?我创建了一个子目录
csv
,但是当我运行代码时,我得到一个错误
FileNotFoundError:[Errno 2]没有这样的文件或目录:'/csv/11_06.csv'
是否可以修改代码以访问子目录,然后将文件保存到
文件名
?我想你的意思是
/csv/xxx.csv
?而不是
/csv/xxx.csv
?编辑好了,很有效,谢谢你。
有什么作用?不客气!使用
/
作为路径意味着您将从当前位置开始。当以
/
开头时,通常指操作系统的根目录,例如
/etc/
# iterate over all available days 
for date in set(df.index.date):  

    # filter your dataframe    
    filtered_df = df.loc[df.index.date == date].copy()

    # save it
    filename = date.strftime('%m_%d')  # filename represented as 'month_day'
    filtered_df.to_csv(f"./csv/{filename}.csv")