python 列转成值 宽表转化为长表的方法


import pandas as pd
import numpy as np
 
 
# 样例
data = {'name':['严小样儿','严小样儿','严小样儿','才华横竖都溢','才华横竖都溢','才华横竖都溢','幽兰幽香','幽兰幽香','幽兰幽香'],
       'subject':['Python','C','SQL','Python','C','SQL','Python','C','SQL'],
       'score':[95,60,95,96,95,80,99,94,88]}
 
 
# 生成df
df = pd.DataFrame(data)

df.index=df.name
df.index.name=''
del df['name']

new_dt=pd.DataFrame(columns=['var_name','var_num'])
for ii in df.columns:
    i_np=np.transpose(df[ii])
    i_df=pd.DataFrame(i_np)
    i_df.columns=['var_num']
    i_df['var_name']=ii
    new_dt=new_dt.append(i_df)
    
print(new_dt)

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值