在Python中以特定间隔将数据追加到DataFrame

时间:2018-10-23 02:17:33

标签: python pandas

我想每3秒钟将随机数附加到数据帧X次。 时间戳格式为hh:mm:ss,应填充在A列(时间)中,随机数应填充在B列(价格)中。我在循环中苦苦挣扎,每隔3秒添加一个时间戳。

import numpy as np
import pandas as pd
import time
import datetime

def main(): 

    ts = time.time()
    st = datetime.datetime.fromtimestamp(ts).strftime('%H:%M:%S')
    data = [[st, '$' + str(np.random.randint(12, 25))]]
    df = pd.DataFrame(data)
    df = pd.DataFrame(data, columns = ['Time', 'Price'])
    print(df)

main()

上面的代码显示:

       Time Price
0  20:56:36   $10

结果应如下所示:

       Time Price
0  20:56:36   $10
1  20:59:36   $16
2  21:02:36   $12
3  21:05:36   $18

1 个答案:

答案 0 :(得分:0)

看来您目前对代码中附加的3分钟没有任何条件?

如果要每隔x分钟调用一次间隔作业,可以尝试apscheduler == 2.1.2(程序包)...

通过pip install apscheduler == 2.1.2

这是一个小模板:

import numpy as np
import pandas as pd
import time
import datetime
from apscheduler.scheduler import Scheduler
#pip install apscheduler==2.1.2



def append(): 
    #Write the logic what you want to do every x minutes

    #End the function

sched = Scheduler()
sched.start()

sched.add_interval_job(append, minutes=x)