該任務涉及轉置CSV 格式的資料表,其中「指標」列值變為新的專欄。所需的結果是扁平格式,其中行由“國家”和“年份”定義,列是“指標”值。
要實現樞軸操作,可以利用.pivot 方法作為如下所示:
out = df.pivot(index=['Country', 'Year'], columns='Indicator', values='Value')
此方法重新排列數據,使「國家」和「年份」成為行索引,「指標」值成為列。產生的“out”變數保存透視資料。
要將資料傳回為平面表格式,可以使用 .rename_axis 從列中消除「Indicator」標籤,並使用 .reset_index 還原「Country」和「年份」作為列。
print(out.rename_axis(columns=None).reset_index())
這會產生一個帶有「國家」的扁平表格, 「年份」和「指標」值作為列。
如果「國家」、「年份」和「指標」重複' 原始資料集中的組合,可以使用.pivot_table。它對重複值執行聚合(預設平均值)。
out = df.pivot_table( index=['Country', 'Year'], columns='Indicator', values='Value') print(out.rename_axis(columns=None).reset_index())
此方法會產生一個扁平化的表格,其中對重複值進行平均,並且列中省略了「指標」標籤。
有關重塑和資料透視表的更多詳細信息,請參閱Pandas,請參閱以下資源:
以上是如何將 Pandas 中的資料表轉換為「指標」列值成為新列?的詳細內容。更多資訊請關注PHP中文網其他相關文章!