【发布时间】:2022-01-27 05:13:09
【问题描述】:
我有一个无法调用列的数据集。在下面的屏幕截图中,我用黄色标记了我需要被识别为列(Vale On、Petroleo 等)和日期列,因为我正在处理时间序列数据,所以我需要将其识别为日期。
我尝试重置索引和一些相关的解决方案,但没有任何效果。我是 Python 新手,如果太明显,我很抱歉。
【问题讨论】:
-
您的列名是 0、1、2...标题被错误地设置为您的数据的第一行。
-
看起来您的数据框的第一行包含列标签。试试
df.columns = df.iloc[0, :] -
你是如何创建数据框的?
pd.read_csv()通常会使用文件的第一行作为列名。 -
感谢您的评论。我已导入 Excel 格式的数据,但在此之前,我对导入的数据集进行了一些修改(例如转置)。我已经使用代码“df.columns = df.iloc[0, :]”来设置列名并且它有效。现在我只需要将“日期”列更改为“日期时间”类型,这是行不通的。我正在尝试“ df1 = df1[pd.to_datetime(df1["Date"])] ”,但它返回“ ParserError: Unknown string format: Date” 。有什么想法吗?
-
我已经解决了这样的问题:首先我再次导入了我的主数据框,在删除了一些行之后,我应用了命令“df["Date"] = df["Date"]。 dt.strftime('%Y-%m-%d') ".在转置数据帧并转回后,我意识到 df 又是另一种格式,所以我使用上面的相同命令再次获取 datetype。一切正常。谢谢大家
标签: python pandas time-series