首页 > 解决方案 > 将列条目转换为行熊猫

问题描述

我有一个如下数据集,它重复每个州的描述(州、接种疫苗的人数、接种疫苗的人口百分比)。我想让所有的描述条目成为列标题

当前列标题 = 描述、数据

需要的列标题 = 州、接种疫苗的人数、接种疫苗的人口百分比、数据

关于如何做到这一点的任何想法?

这是我当前的代码:

import pandas as pd
import numpy as np
df = pd.read_csv("vaccinate_pct.csv",header=1,na_values=" NaN",index_col=False)
df=df[['Description','Data']]
df=df.dropna(axis=0)
df
Description Data
0   state   Vermont
1   num people vaccinated   424,323
2   percentage of population vaccinated 68
3   state   Connecticut
4   num people vaccinated   2,360,741
... ... ...
148 num people vaccinated   1,891,063
149 percentage of population vaccinated 38.57
150 state   Mississippi
151 num people vaccinated   1,144,438
152 percentage of population vaccinated 38

标签: pythonpandasdataframe

解决方案


如果这是你的意思:

你的df:

在此处输入图像描述

解决方案:

df_new = pd.DataFrame()
description_unique_values = df.Description.unique()
df_dict = {name: df.loc[df['Description'] == name]['Data'] for name in description_unique_values}
for v in description_unique_values:
    df_new[v] = df_dict[v].reset_index(drop=True)

结果:

在此处输入图像描述


推荐阅读