首页 > 解决方案 > 熊猫数据框无法将毫秒保存到 csv

问题描述

我使用此代码将数据从 cassandra 导出到 csv:

import pandas as pd
from cassandra import ConsistencyLevel
from cassandra.cluster import Cluster
from cassandra.auth import PlainTextAuthProvider
from cassandra.query import SimpleStatement


def getClockInDataFromCassandra(para_ip,para_username,para_password,para_save_path,para_begin_time,para_end_time):
    try:
        contact_points = [para_ip]
        auth_provider = PlainTextAuthProvider(username=para_username, password=para_password)
        cluster = Cluster(contact_points=contact_points, auth_provider=auth_provider)
        session = cluster.connect()
        cql_str = 'select * from mytest.table1 ;' 
        simple_statement = SimpleStatement(cql_str, consistency_level=ConsistencyLevel.ONE,fetch_size=None)
        execute_result = session.execute(simple_statement, timeout=None)
        result = execute_result._current_rows
        cluster.shutdown()
        df = pd.DataFrame(result)
        df['clock_time_add_8hour'] = df['clock_time'] + pd.Timedelta(hours=8)
        df_result = df[(df['clock_time_add_8hour'] > para_begin_time) & (df['clock_time_add_8hour'] <= para_end_time)]
        df_result = df_result.drop(['clock_time_add_8hour'], axis=1)
        df_result.to_csv(para_save_path, index=False, mode='w', header=True)
    except Exception as ex:
        raise ex


if __name__ == '__main__':
    ip= 'XX.XX.XX.XX'
    username = 'XXX'
    password = 'XXX'
    csvPath = r'./20201229.csv'
    beginTime='2020-12-01 12:00:00'
    endTime='2020-12-01 15:00:00'
    getClockInDataFromCassandra(ip,username,password,csvPath,beginTime,endTime)

但是当我打开csv时,我发现日期中没有毫秒,像这样:

clock_time
2020/12/1 4:30:13
2020/12/1 4:25:14
2020/12/1 5:01:59

实际上数据帧中有毫秒,如下所示:
在此处输入图像描述

我怎样才能将毫秒保存到 csv 中,我想要%Y-%m-%d %H:%M:%S.%f

标签: pythonpandas

解决方案


推荐阅读