【问题标题】:How to reshape a DataFrame with a existed column?如何使用现有列重塑 DataFrame?
【发布时间】:2017-05-23 01:42:38
【问题描述】:

我是使用 python 进行数据分析的新手,这里有一个简单的问题正在寻找解决方案。我正在使用pandas 模块。

其中的一个示例子集如下所示:

如您所见,有一个包含 3 列的 DataFrame,然后我将 record_date 拆分为 3 个部分。

现在的问题是如何将 DataFrame 更改为这样的格式:

【问题讨论】:

  • 不要不要在其他网站上发布您的代码或数据。相反,将它们尽可能多地粘贴到您的问题中。

标签: python pandas dataframe


【解决方案1】:

考虑示例数据框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

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-06-12
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多