Python 如何加入熊猫系列的数字,使其成为一个数字

Python 如何加入熊猫系列的数字,使其成为一个数字,python,pandas,datetime,Python,Pandas,Datetime,我正在使用熊猫图书馆 数据集中有三列,分别是“小时”、“分钟”和“秒” 我想加入这三列,使其成为时间格式 例如,第一列应为9:33:09 我如何才能做到这一点?转换为timedelta并添加- pd.to_timedelta(df["hours"], unit='h') + pd.to_timedelta(df["minutes"], unit='m') + pd.to_timedelta(df["sec"], unit='S')

我正在使用熊猫图书馆

数据集中有三列,分别是“小时”、“分钟”和“秒”

我想加入这三列,使其成为时间格式

例如,第一列应为9:33:09


我如何才能做到这一点?

转换为timedelta并添加-

pd.to_timedelta(df["hours"], unit='h') + pd.to_timedelta(df["minutes"], unit='m') + pd.to_timedelta(df["sec"], unit='S')
查看您的示例,我认为
sec
列实际上是微秒,如果是这样的话-

pd.to_timedelta(df["hours"], unit='h') + pd.to_timedelta(df["minutes"], unit='m') + pd.to_timedelta(df["sec"], unit='us')

您可以为此使用字符串操作和熊猫

import pandas as pd

# Read csv

data=pd.read_csv("data.csv")


# Create a DataFrame object

df=pd.DataFrame(data,columns=["hour","mins","sec"])


# Iterate through records and print the values.

for ind in df.index: 
  hour=str(df['hour'][ind])
  min=str(df['mins'][ind])
  sec=str(df['sec'][ind])

  sec=sec[:len(sec)-4]

  if(len(sec)==1):
    sec="0"+sec

  print(hour+":"+min+":"+sec)
输出:
HH:MM:SS

如果秒数为1位数,则会追加0。

显示了类似的问题。