You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Python空数据集场景下能否用if-else创建新数据集?

解决空数据集下创建df2的问题

你的思路是对的,可以用if-else解决,但你写的代码有两个问题:一是if/else语句末尾没加冒号,二是条件判断逻辑不对——df['count_days'].dt.days >=1返回的是布尔值组成的Series,没法直接作为if的判断条件,if需要的是单个True/False值。

正确的做法是先判断数据集是否为空(用df.empty),再执行对应操作:

if df.empty:
    print("No Data")
else:
    df2 = df['count_days'].dt.days >= 1

如果还要考虑count_days列可能不存在的情况,可以再加个列存在的判断:

if df.empty or 'count_days' not in df.columns:
    print("No Data or missing 'count_days' column")
else:
    df2 = df['count_days'].dt.days >= 1

为什么原代码会报错?因为当df是空数据集时,df['count_days']是空的时间序列,调用dt.days时没有可处理的时间数据,自然会触发错误。先判断数据集是否为空就能避免这个问题。

内容的提问来源于stack exchange,提问作者Crystal

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.16 13:04:53