首页 > 解决方案 > 将数据帧与 datetime 和 pandas Python 相结合

问题描述

下面的代码读取下面的 2 个 csv 文件,然后将其date\Date转换为pd.to_datetime(), 以将它们与data_combo函数组合在一起。但是,该pd.to_datetime()功能对于其余部分date不起作用,但应该是如何进行必要的转换以实现预期的输出?typedata<class 'pandas.core.series.Series'><class 'pandas.core.indexes.datetimes.DatetimeIndex'>

代码:

import functools
import pandas as pd 
import datetime

def datetime_convert(dataset):
    data =pd.read_csv(dataset[0], low_memory=False)
    #reverses all the table data values 
    data1 = data.iloc[::-1].reset_index(drop=True)
    dataset = data1[dataset[1]]
    date = pd.to_datetime(dataset)
    return date

data1= datetime_convert(['data1.csv', 'date'])
data2 = datetime_convert(['data2', 'Date'])

data_combo = functools.reduce(pd.Index.union, [data1, data2])

数据1 csv:

Unix Timestamp  date                    Symbol  
1444311600      2015-10-08 13:40:00     BTCUSD
1444311660      2015-10-08 13:41:00     BTCUSD
1444311720      2015-10-08 13:42:00     BTCUSD  

数据2 csv:

Unix Timestamp  Date                    Symbol  
1634774460000   2021-10-21 00:01:00     BTCUSD
1634774520000   2021-10-21 00:02:00     BTCUSD
1634774580000   2021-10-21 00:03:00     BTCUSD

预期输出:

DatetimeIndex([[2015-10-08 13:40:00, 2015-10-08 13:41:00, 2015-10-08 13:42:00, 
2021-10-21 00:01:00, 2021-10-21 00:02:00, 2021-10-21 00:03:00],dtype='datetime64[ns]', freq=None)

标签: pythonpandascsvdatetimetime

解决方案


为什么你不能第一次将日期标题的名称更改为 Date 然后尝试将两者都转换为 datetime 然后合并这两个数据框。并将日期列设置为索引

我无法发表评论,所以在这里写


推荐阅读