我试图在Pandas中手动重新创建melt()功能,以便更好地理解索引和预制功能的机制,但是我有点挣扎。
如果我定义一个函数melt_man(df,col_vals_key,values):
其中df =原始数据框(如下),col_vals代表原始表中各列的名称,key是新表中此列的名称(在本例中为city),而value是保存此温度数据的新列的名称。
我正在考虑的步骤将是创建一个新的数据框,使原始表中的所有列保持不变,但col_vals指定的列除外。然后,我想获取原始表的列名(如图所示)并将其作为行插入新表中。从那里我有点迷茫。最好的方法是merge()的一些变化吗?似乎从那里开始,我想做一些与excel中的index_match相似的事情来传递值,然后我找到了lookup()函数,但是这要求列表的长度是相同的。这里是pandas / python的新手,因此将不胜感激! 谢谢 我到目前为止所拥有的..
new_table = df.loc [:, df.columns!= col_vals]
new_table = df.loc [col_vals]
[