熊猫将部分列索引转换为日期时间

崇安济

下面的DataFrame包含1996年至2016年的房价数据集。

除了前6列之外,其他列也需要转换为Datetimetype。

DataFrame的房价数据列

我尝试运行以下代码:

HousingPrice.columns[6:] = pd.to_datetime(HousingPrice.columns[6:])

但我得到了错误:

TypeError: Index does not support mutable operations

我希望将“索引”列中的某些列转换为Datetime类型,而不是所有列。

j

大熊猫指数是不变的,所以你不能这样做。

但是,您可以使用访问和修改列索引array,请参见doc此处

HousingPrice.columns.array[6:] = pd.to_datetime(HousingPrice.columns[6:])

应该管用。

请注意,这只会更改列索引。为了转换列值,您可以执行以下操作:

date_cols = HousingPrice.columns[6:]
HousingPrice[date_cols] = HousingPrice[date_cols].apply(pd.to_datetime, errors='coerce', axis=1)

编辑

图解示例:

data = {'0ther_col': [1,2,3], '1996-04': ['1996-04','1996-05','1996-06'], '1995-05':['1996-02','1996-08','1996-10']}

print('ORIGINAL DATAFRAME')
df = pd.DataFrame.from_records(data)
print(df)

print("\nDATE COLUMNS")

date_cols = df.columns[-2:]
print(df.dtypes)

print('\nCASTING DATE COLUMNS TO DATETIME')

df[date_cols] = df[date_cols].apply(pd.to_datetime, errors='coerce', axis=1)
print(df.dtypes)

print('\nCASTING DATE COLUMN INDEXES TO DATETIME')

print("OLD INDEX -", df.columns)
df.columns.array[-2:] = pd.to_datetime(df[date_cols].columns)
print("NEW INDEX -",df.columns)

print('\nFINAL DATAFRAME')
print(df)

产量:

ORIGINAL DATAFRAME
   0ther_col  1995-05  1996-04
0          1  1996-02  1996-04
1          2  1996-08  1996-05
2          3  1996-10  1996-06

DATE COLUMNS
0ther_col     int64
1995-05      object
1996-04      object
dtype: object

CASTING DATE COLUMNS TO DATETIME
0ther_col             int64
1995-05      datetime64[ns]
1996-04      datetime64[ns]
dtype: object

CASTING DATE COLUMN INDEXES TO DATETIME
OLD INDEX - Index(['0ther_col', '1995-05', '1996-04'], dtype='object')
NEW INDEX - Index(['0ther_col', 1995-05-01 00:00:00, 1996-04-01 00:00:00], dtype='object')

FINAL DATAFRAME
   0ther_col 1995-05-01 00:00:00 1996-04-01 00:00:00
0          1          1996-02-01          1996-04-01
1          2          1996-08-01          1996-05-01
2          3          1996-10-01          1996-06-01

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

将多级熊猫索引转换为日期时间

来自分类Dev

将熊猫系列索引转换为日期时间

来自分类Dev

Python将日期和时间转换为熊猫索引

来自分类Dev

将熊猫中的日期时间索引转换为单独的列

来自分类Dev

将多级熊猫索引转换为日期时间

来自分类Dev

熊猫:将日期时间转换为月末

来自分类Dev

熊猫将日期时间转换为分钟

来自分类Dev

将'%m /%d /%Y'字符串索引转换为熊猫日期时间索引

来自分类Dev

熊猫将日期时间对象类型转换为日期时间

来自分类Dev

将年中的年和日转换为熊猫中的日期时间索引

来自分类Dev

熊猫-将数据框多索引转换为日期时间对象

来自分类Dev

熊猫:如何将int64 epoc秒的索引转换为日期时间

来自分类Dev

熊猫:如何将int64年的索引转换为日期时间

来自分类Dev

熊猫read_json-停止将索引转换为日期时间

来自分类Dev

熊猫:如何将int64 epoc秒的索引转换为日期时间

来自分类Dev

熊猫将多个数据框列转换为单个日期时间索引

来自分类Dev

熊猫将时间戳列转换为日期时间

来自分类Dev

熊猫:将Unix时间从0开始转换为日期时间

来自分类Dev

熊猫:将时间戳转换为日期时间

来自分类Dev

仅将日期时间转换为熊猫时间

来自分类Dev

将元组索引转换为日期时间索引

来自分类Dev

将列表转换为大熊猫中的日期时间

来自分类Dev

熊猫-如何将列转换为日期时间对象

来自分类Dev

将字符串转换为日期时间熊猫

来自分类Dev

熊猫-将float类型的列转换为日期时间

来自分类Dev

将日期转换为varchar2丢失的时间部分

来自分类Dev

将varchar的不同部分转换为日期时间,SQL

来自分类Dev

如何将数据框的日期和时间列转换为熊猫的日期时间格式?

来自分类Dev

如何将 Pandas DataFrame 索引从日期时间转换为简单的时间索引

Related 相关文章

  1. 1

    将多级熊猫索引转换为日期时间

  2. 2

    将熊猫系列索引转换为日期时间

  3. 3

    Python将日期和时间转换为熊猫索引

  4. 4

    将熊猫中的日期时间索引转换为单独的列

  5. 5

    将多级熊猫索引转换为日期时间

  6. 6

    熊猫:将日期时间转换为月末

  7. 7

    熊猫将日期时间转换为分钟

  8. 8

    将'%m /%d /%Y'字符串索引转换为熊猫日期时间索引

  9. 9

    熊猫将日期时间对象类型转换为日期时间

  10. 10

    将年中的年和日转换为熊猫中的日期时间索引

  11. 11

    熊猫-将数据框多索引转换为日期时间对象

  12. 12

    熊猫:如何将int64 epoc秒的索引转换为日期时间

  13. 13

    熊猫:如何将int64年的索引转换为日期时间

  14. 14

    熊猫read_json-停止将索引转换为日期时间

  15. 15

    熊猫:如何将int64 epoc秒的索引转换为日期时间

  16. 16

    熊猫将多个数据框列转换为单个日期时间索引

  17. 17

    熊猫将时间戳列转换为日期时间

  18. 18

    熊猫:将Unix时间从0开始转换为日期时间

  19. 19

    熊猫:将时间戳转换为日期时间

  20. 20

    仅将日期时间转换为熊猫时间

  21. 21

    将元组索引转换为日期时间索引

  22. 22

    将列表转换为大熊猫中的日期时间

  23. 23

    熊猫-如何将列转换为日期时间对象

  24. 24

    将字符串转换为日期时间熊猫

  25. 25

    熊猫-将float类型的列转换为日期时间

  26. 26

    将日期转换为varchar2丢失的时间部分

  27. 27

    将varchar的不同部分转换为日期时间,SQL

  28. 28

    如何将数据框的日期和时间列转换为熊猫的日期时间格式?

  29. 29

    如何将 Pandas DataFrame 索引从日期时间转换为简单的时间索引

热门标签

归档