如何合并熊猫列和日期时间

时间:2019-05-09 20:51:16

标签: python pandas datetime

我从csv文件中获得了一个像这样的数据框:

Unnamed: 0 Unnamed: 1  Temp    Hi   Low  Out  Dew   Wind Wind.1 Wind.2   Hi.1  ...   In    In In .1 In .2 In .3   In Air Unnamed: 30 Wind.4 Wind.5    ISS   Arc.

   0        Date       Time   Out  Temp  Temp  Hum  Pt.  Speed    Dir    Run  Speed  ...  Temp  Hum   Dew  Heat   EMC  Density         ET    Samp    Tx   Recept  Int.

   1    09/04/19      11:05   ---   ---   ---  ---  ---    0.0    ---   0.00    0.0  ...  27.8   30   8.6  26.6  6.05   1.1483        0.00      0      1     0.0     5

   2    09/04/19      11:10   ---   ---   ---  ---  ---    0.0    ---   0.00    0.0  ...  28.1   29   8.4  26.8  5.85   1.1475        0.00      0      1     0.0     5

   3    09/04/19      11:15   ---   ---   ---  ---  ---    0.0    ---   0.00    0.0  ...  28.2   29   8.5  27.0  5.85   1.1468        0.00      0      1     0.0     5

我希望有一个numpy数组,其中包含每个度量的日期时间。如何合并包含明显日期和时间的前两个列。感谢您在这一点上的帮助。

3 个答案:

答案 0 :(得分:0)

如果只需要它作为字符串,则

df["Date_Time"] = df["Date"].map(str) + ' ' + df["Time"].map(str)

但是,如果您想保留日期格式,请尝试下面的代码,该代码将创建一个具有datetime64 [ns]格式的新列Date_Time。

df['Date_Time'] = pd.to_datetime(df['Date']+' '+df['Time'])

答案 1 :(得分:0)

我有类似的事情,我使用了日期时间的“帮助”列

df['helper']=df.Date+' '+df.Time

       date   time        helper
 1  09/04/19  11:15  09/04/19 11:15
 2  09/04/19  11:05  09/04/19 11:05

然后

df['DateTime'] = pd.to_datetime(df.helper)

1   2019-09-04 11:15:00
2   2019-09-04 11:05:00
Name: DateTime, dtype: datetime64[ns]

最后

df.drop(columns='helper', inplace=True)  

答案 2 :(得分:0)

您可以使用print(b.reshape(1,-1).t()) print(b.reshape(-1,1)) 根据多列中的值创建一个新的熊猫系列。在您的情况下,可能看起来像这样:

df.apply(axis=1)