当前位置: 首页 > 知识库问答 >
问题:

熊猫数据列的不同格式-列与行的数据类型

卫博
2023-03-14

我有一个pd DataFrame列,其中日期值的格式不同。例如“YYYY-MM-DD hh:MM:ss”和“DD.MM”。“YYYY”甚至“DD.MM”我想将它们全部转换为一种格式(例如,“YYYY-MM-DD”),并(在许多事情中)尝试过

df[~df.date.str.contains('(\d{4})-(\d{2})-(\d{2}) (\d{2}):(\d{2}):(\d{2})')] 

查找日期未写为“YYYY-MM-DD hh:MM:ss”的行。然而,这不起作用。

因此,我检查了列的类型

df['date'].dtype   #prints dtype('O')

然后我检查了一下

for index, row in df.iterrows():
    print(type(row['date']))

并收到了诸如类的datetime之类的混合打印。“datetime”和类“str”

我很困惑。为什么当列是“对象”数据类型时,我不总是得到“str”?有人可能知道如何使正则表达式工作吗?

共有1个答案

霍锦
2023-03-14
def findIndex(x):
    try:
        pd.to_datetime(x).strftime('%m/%d/%Y')
        return
    except:
        return True


df.date.apply(lambda x: findIndex(x))

现在,您可以使用奇怪的格式获取所有索引。希望这有帮助。

 类似资料:
  • 问题内容: 如果我有一个包含以下列的数据框: 我想说:这是一个数据框,请给我列出对象类型或日期时间类型的列的列表吗? 我有一个将数字(Float64)转换为两位小数的函数,并且我想使用此数据框列的特定类型的列表,并通过此函数运行它以将它们全部转换为2dp。 也许: 问题答案: 如果您想要某种类型的列的列表,可以使用:

  • 问题内容: 我有大熊猫表格数据框要转换为JSON。标准的.to_json()函数不会为JSON创建紧凑格式。如何仅使用pandas获得这样的JSON输出格式? 这是用于表格数据的JSON的一种非常紧凑的格式。(我可以在行上循环。…但是) 问题答案: 看来你需要先于: 由于尚未实现: ValueError:选项“ orient”的值“ list”无效 编辑: 如果index不是column,请添加:

  • 我有一个大熊猫时间帧,它有一个列,这个时间格式:例如(小时,分钟,秒)。这些值是通过熊猫从我的SQL数据库中提取的,具有以下查询函数 我想将这些时间值转换为分钟(或秒),因为我想对作为我的持续时间变量的值执行线性回归。我该怎么做呢?是否有一种方法可以将这些值(例如,将<code>14:30:00 示例数据帧:

  • 如果我有一个包含以下列的数据帧: 我想能够说:这里是一个数据框,给我一个列的列表,它是类型Object还是类型DateTime? 我有一个将数字(Float64)转换为两位小数的函数,我想使用这个特定类型的dataframe列列表,并通过这个函数将它们全部转换为2dp。 也许 吧:

  • 我想使用两列作为行ID,同时计算基于时间的分组。请看下图: 转化成这样: 正在发生的是,X在时间10发生了0次,但在15和23发生了1次。 Y在10点钟发生了3次,但在15和23没有。等等。

  • 问题内容: 我有一个熊猫数据框。我想“落后”我的专栏之一。例如,这意味着将整个列“ gdp”上移一位,然后删除其余行底部的所有多余数据,以使所有列的长度再次相等。 无论如何要这样做? 问题答案: