如何重塑Pandas Dataframe ?

ojsjcaue  于 2023-03-11  发布在  其他
关注(0)|答案(2)|浏览(138)

我有一个 Dataframe :

pd.DataFrame({'a':['name','number','dob'],'b':['myamulla','1234','1999-01-01']})

我想有这个重塑如下。

0md85ypi

0md85ypi1#

使用set_index和移调(T):

out = df.set_index('a').T.reset_index(drop=True)

或者DataFrame构造函数:

out = pd.DataFrame([df['b'].tolist()], columns=df['a'].tolist())

输出:

name number         dob
0  myamulla   1234  1999-01-01
ca1c2owp

ca1c2owp2#

使用DataFrame构造函数:

df = pd.DataFrame([df['b'].tolist()], columns=df['a'].tolist())
print (df)
       name number         dob
0  myamulla   1234  1999-01-01

或者从DataFrame中选择numpy数组:

a = df.to_numpy()
df = pd.DataFrame([a[:, 1]], columns=a[:, 0])
print (df)
       name number         dob
0  myamulla   1234  1999-01-01

或转换为词典:

d = df.to_dict('list')
df = pd.DataFrame([d['b']], columns=d['a'])
print (df)
       name number         dob
0  myamulla   1234  1999-01-01

相关问题