代码之家  ›  专栏  ›  技术社区  ›  Maeaex1

数据帧中的日期格式更改

  •  2
  • Maeaex1  · 技术社区  · 6 年前

    在我读取一个文件并解析日期之后,日期格式在 dataframe. 在我的代码下面找到。

    v2x = r'E:\Model\Data\v2x.csv'
    outfile = r'E:\Model\ModelSpecific\Input_shat2.txt'
    
    df_data = pd.read_csv(file_name,parse_dates=[0], index_col=0)
    df_v2x = pd.read_csv(v2x, parse_dates=[0], sep=",")
    
    print(df_v2x[4800:5000])
    

    正确的格式应为“%y-%m-%d”

    以及打印输出:

    4988 2018-07-08   V2TX     12.6265 --> Wrong Format
    4989 2018-08-08   V2TX     12.8654
    4990 2018-09-08   V2TX     12.4882
    4991 2018-10-08   V2TX     15.1113 
    4992 2018-08-13   V2TX     15.9406 --> Right Format
    4993 2018-08-14   V2TX     15.8610
    4994 2018-08-15   V2TX     18.4755
    4995 2018-08-16   V2TX     16.2633
    

    1 回复  |  直到 6 年前
        1
  •  0
  •   Maeaex1    6 年前

    找到了一个解决“恼人”的方法(提取日、月和年的字符串)。

    v2x = r'E:\Model\Data\v2x.csv'
    outfile = r'E:\Model\ModelSpecific\Input_shat2.txt'
    
    data = pd.read_csv(v2x, sep=",")
    
    data['Year'] = data['Date'].str.slice(6, 10)  #redo the index because of american timestamp
    data['Month'] = data['Date'].str.slice(3,5) 
    data['Day'] = data['Date'].str.slice(0,2)
    datetime = pd.to_datetime(data[['Year','Month','Day']])
    data = data.drop(['Date','Year','Month','Day'],axis=1)
    data = pd.concat((datetime,data),axis=1)
    data = data.rename({0:'Date'},axis=1)
    data = data.set_index('Date')