转化前数据需要做index(或者是A列)的去重处理,否则会报错。
#将user_id 作为index,将 code作为 columns :
df2_1 = pd.DataFrame(index=list(df['user_id'].drop_duplicates()),columns=list(df['code'].drop_duplicates()))
#对表内values进行填充 values 列值
#转置处理
columns_list = list(df2_1)
for i in range(len(columns_list)):
df2_1[columns_list[i]] = df[df['code']==columns_list[i]][['user_id','value']].set_index('user_id')
以下为转化前与转化后:
转化前:
转化后: