Python 如何使用现有列重塑数据帧?

Python 如何使用现有列重塑数据帧?,python,pandas,dataframe,Python,Pandas,Dataframe,我是python数据分析新手,这里有一个简单的问题需要解决。我正在使用pandas模块 其子集示例如下所示: 如您所见,有一个包含3列的数据框,然后我将记录_日期分为3部分 现在的问题是如何将数据帧更改为如下格式: 考虑示例数据帧df df = pd.DataFrame(dict( record_date=pd.date_range('2015-01-01', periods=24, freq='2M'), user_id=np.arange(8).repea

我是python数据分析新手,这里有一个简单的问题需要解决。我正在使用
pandas
模块

其子集示例如下所示:

如您所见,有一个包含3列的数据框,然后我将
记录_日期
分为3部分

现在的问题是如何将数据帧更改为如下格式:


考虑示例数据帧
df

df = pd.DataFrame(dict(
        record_date=pd.date_range('2015-01-01', periods=24, freq='2M'),
        user_id=np.arange(8).repeat(3) + 1,
        power_consumption=np.random.randint(100, 500, size=24)
    ))[['record_date', 'user_id', 'power_consumption']]
然后您可以适当地设置索引并
unstack

rd = df.record_date
d1 = df.set_index([rd.dt.year, rd.dt.month, rd.dt.day, 'user_id'])
d1 = d1.rename_axis(['Year', 'Month', 'Day', 'user_id']).power_consumption

d1.unstack().T

不要在其他网站上发布您的代码或数据。相反,在你的问题中粘贴尽可能多的必要内容。