【问题标题】:Mixed datetime and categorical hierarchical index (multiindex) in pandaspandas 中的混合日期时间和分类层次索引(多索引)
【发布时间】:2017-07-22 15:56:35
【问题描述】:

数据框df 包括df['country']df['sector']df['year'] 上的列,还有其他混合了intfloat 的数字数据。国家和部门是categorical 变量,年份是datetime64[ns]

我创建了一个如下的 3 层层次结构

arrays1 = [np.array(df['country']), np.array(df['sector']), np.array(df['year'])] 
df1 = df.set_index(arrays1)
df1.index.names = ['country','sector', 'year']
df1 = df1.sort_index()

您应该如何创建这个多索引以确保第三级year 被识别为频率为年度的日期时间索引?

【问题讨论】:

  • 你能添加一些数据样本吗?

标签: pandas ipython multi-index


【解决方案1】:

看来你需要:

df1 = df.set_index(['country','sector','year']).sort_index()

然后你可以通过get_level_values检查levelMultiIndex

print (df1.index.get_level_values('year'))

【讨论】:

  • 谢谢你——一个雄辩的解决方案。如何设置频率,目前您的 get_level_values() 命令不返回任何值,但我想要每年一次。
  • 是的,我创建了样本,你是对的,它似乎失去了频率。有什么理由需要它吗?因为它看起来像错误:(
  • 我将对 statsmodels 包中的数据进行时间序列分析。我认为它会变得很重要。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2019-06-22
  • 2017-04-16
  • 1970-01-01
  • 2021-02-18
  • 1970-01-01
  • 2014-03-07
  • 1970-01-01
相关资源
最近更新 更多