相关疑难解决方法(0)

Python Pandas 检查字符串是否仅为“日期”或仅为“时间”或“日期时间”

我正在使用熊猫阅读 csv

str,date,float,time,datetime
a,10/11/19,1.1,10:30:00,10/11/19 10:30
b,10/11/19,1.2,10:00:00,10/11/19 10:30
c,10/11/19,1.3,11:10:11,10/11/19 10:30
Run Code Online (Sandbox Code Playgroud)
df = pd.read_csv(file)
Run Code Online (Sandbox Code Playgroud)

现在我的业务需求是我想知道哪一列是纯日期字段、纯时间字段,或者哪一列是完整的日期时间。对于特定列,我的代码是:

try:
                    dt = pd.to_datetime(df[col])
                    dates = [obj.date() for obj in dt]
                    times = [obj.time() for obj in dt]

                    if dates and (set(times) == set([datetime.time(0, 0)])):
                        # Its a pure date field
                    elif <something>:
                       # Its a  pure time field
                    else:
                       #Its a Datetime field


except:
            # its not a datefield
Run Code Online (Sandbox Code Playgroud)

我的代码的问题是当只有时间字段时,pd.to_datetime 将默认为今天的日期,所以我无法将它与日期时间区分开来。有什么简单的解决办法吗?请帮我填写上面代码中的“东西”

python csv datetime numpy pandas

3
推荐指数
1
解决办法
1790
查看次数

标签 统计

csv ×1

datetime ×1

numpy ×1

pandas ×1

python ×1