python中根据日期提取数据_python – 从数据集上给定的日期范围中提取属于某一天的数据...

本文介绍如何从包含2018年1月12日至8月3日数据的DataFrame中,根据日期筛选每天的数据并导出为CSV文件。作者遇到的问题是循环遍历月份和日期时设置的范围不正确,导致生成了空的CSV文件。解决方案是首先重命名日期列,然后应用lambda函数获取日期部分,并获取所有日期的唯一值。通过遍历这些日期,将对应日期的数据保存为单独的CSV文件。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

我的数据集的日期范围是2018年1月12日到8月3日,其中包含一些值:

my_df DataFrame的维度是:

my_df.shape

(9752, 2)

每行包含半小时的频率

第一行开始于2018-01-12

my_df.iloc[0]

Date: 2018-01-12 00:17:28

Value 1

Name: 0, dtype: object

最后一排结束于2018-08-03

my_df.tail(1)

Date: Value

9751 2018-08-03 23:44:59 1

我的目标是选择与每天相对应的数据行并将其导出为CSV文件.

为了获得1月12日的数据并保存到可读文件,我执行:

# Selecting data value of each day

my_df_Jan12 = my_df[(my_df['Fecha:']>='2018-01-12 00:00:00')

&

(my_df['Fecha:']<='2018-01-12 23:59:59')

]

my_df_Jan12.to_csv('Data_Jan_12.csv', sep=',', header=True, index=False)

从1月12日到8月03日有203天(28周)

我不想每天手动执行此查询,然后我尝试以下基本分析:

>我需要生成203个文件(每天1个文件)

> 1月12日(1月12日)的一天

> 1月是第一个月(01),8月是第8个月(08)

然后:

>我需要迭代203天的总体情况

>并且在每个日期行值检查中是必需的

月份和日期值日期以及检查更改的顺序

他们每个人

根据以上所述,我正在尝试这种方法:

# Selecting data value of each day (203 days)

for i in range(203):

for j in range(1,9): # month

for k in range(12,32): # days of the month

values = my_df[(my_df['Fecha:']>='2018-0{}-{} 00:00:00'.format(j,k))

&

(my_df['Fecha:']<='2018-0{}-{} 23:59:59'.format(j,k))]

values.to_csv('Values_day_{}.csv'.format(i), sep=',', header=True, index=False)

但是我的问题在于我在几个月内迭代范围(12,32),这个范围(12,32)仅适用于1月份的第一个月,我想是这样……

最后,我得到203个空的CSV文件,因为我做错了…

如何才能解决这种适合的小挑战?

任何方向都非常感谢

解决方法:

像这样的东西?我将您的原始列Date:重命名为Timestamp.我也假设您拥有的日期:系列是熊猫DateTime系列.

my_df.columns = ['Timestamp', 'Value']

my_df['Date'] = my_df['Timestamp'].apply(lambda x: x.date())

dates = my_df['Date'].unique()

for date in dates:

f_name = str(date) + '.csv'

my_df[my_df['Date'] == date].to_csv(f_name)

标签:python,pandas,extract

来源: https://codeday.me/bug/20190731/1586610.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值