【问题标题】:convert object format '2014-09-15T11:10:34Z' in pandas to string or Date-time object将 pandas 中的对象格式“2014-09-15T11:10:34Z”转换为字符串或日期时间对象
【发布时间】:2019-04-04 18:30:05
【问题描述】:

我有一个像这样的 DataFrame,

funded_date 列类型是Object。


我想创建一个新的数字列,例如“2014-09-15T11:10:34Z”到“2014”

如何实现?

【问题讨论】:

    标签: python pandas


    【解决方案1】:

    这是对我有用的答案。

    df['year'] = pd.to_datetime(df['funded_date']).dt.year
    data_categoricals['year'] = df['year']  
    

    【讨论】:

      【解决方案2】:

      尝试使用字符串切片:

      df['year'] = df['funded_date'].str[0:4].astype(int)
      

      如果您的数据中有空值,请尝试:

      df['year'] = pd.to_numeric(df['date'].str[0:4], errors='coerce')
      

      【讨论】:

      • 它引发了这个错误:ValueError: cannot convert float NaN to integer
      • @Elasri 试试第二条语句
      【解决方案3】:

      确保funded_date 是datetime:

      df['funded_date'] = pd.to_datetime(df['funded_date'])
      

      现在使用.year 访问器:

      df['funded_year'] = df['funded_date'].year
      

      【讨论】:

      • 编辑第二行后它应该df['funded_year'] = df['funded_date'].year
      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2014-12-13
      • 1970-01-01
      • 2019-04-27
      相关资源
      最近更新 更多