为了账号安全,请及时绑定邮箱和手机立即绑定

如何将一列中所有值的数据框转换为多列数据框?

如何将一列中所有值的数据框转换为多列数据框?

开满天机 2023-03-01 16:58:53
我有一个来自 BLS 的数据 DataFrame,其中包含与 series_id、年份、期间和值相对应的列。每个条目的 series_id 长度为 20 个字符,最后两个字符对应于度量类型(即 01:所有员工,以千为单位,26:所有员工,3 个月的平均变化)。有没有办法将 DataFrame 分成一个多列(所有员工、所有员工、3 个月平均变化等)?总共有 9 个我想要拆分的度量,并且没有关于它们切换到不同度量的频率的模式,所以我不能每 100 个条目或任何数量拆分 DataFrame。数据的网址是: https: //download.bls.gov/pub/time.series/sm/sm.data.0.Current数据是什么样的:我希望数据看起来像什么:
查看完整描述

1 回答

?
catspeake

TA贡献1111条经验 获得超0个赞

如果您仍在寻找解决方案。采纳 ansev 的建议使用数据透视表:


df['measure']=df['series_id'].str[18:20]

df['series_id']=df['series_id'].str[:18]

dat=df.pivot_table(index=['series_id','year','period'],values='value',

               columns=['measure']).reset_index()

# To rename columns

names={'01':'All Employees','26':'All Employees, 3-month change'}

dat=dat.rename(columns=names)


查看完整回答
反对 回复 2023-03-01
  • 1 回答
  • 0 关注
  • 75 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信