使用python中的日期变量循环数据

时间:2016-09-13 02:28:13

标签: python loops date pandas

我有以下数据框,包含datetime,lon和lat变量。每秒收集该数据,这意味着每个日期重复60次

我正在使用lat,lon值进行一些计算,最后我需要编写 这个数据到Postgres表。

2016-07-27 06:43:45    50.62    3.15
2016-07-27 06:43:46    50.67    3.22
2016-07-28 07:23:45    52.32    3.34
2016-07-28 07:24:46    52.67    3.45

目前我有1000万条记录。如果我使用整个数据帧进行计算,则需要更长的时间。

如何为每个日期循环,将其写入数据库并清除数据框?

我已将datetime变量转换为日期格式

df['date'] = df['datetime'].dt.date
df = df.sort(['datetime'])

my computation is
df.loc[(df['lat'] > 50.10) & (df['lat'] <= 50.62), 'var1'] = 1
df.loc[(df['lan'] > 3.00) & (df['lan'] <= 3.20), 'var2'] = 1

将其写入DB

df.to_sql('Table1', engine,if_exists = "replace",index = False)

1 个答案:

答案 0 :(得分:1)

您是否考虑过使用groupby()功能?您可以使用它将每个'日期'视为单独的DataFrame,然后运行您的计算。

for sub_df in df.groupby('date'):
    # your computations