对齐不匹配的索引并执行 pandas 融化

最棒的

我有两个具有不同索引的数据框

subject_ID,score,region,supplier
1001,27,AP,ABC
1002,35,AP,ABC
1003,29,ANZ,DEF
1004,35,ANZ,DEF
1005,30,KOREA,GHI
1006,34,KOREA,GHI

df = pd.read_clipboard(sep=',')

test_score,dumma,dummeel
217,23,45
315,43,65
219,12,46
315,17,87
310,19,97
314,23,63

df1 = pd.read_clipboard(sep=',')
s = pd.Series([11, 21, 31, 114,261,321])
df1.set_index([s],inplace=True)

基本上,两个数据帧的长度相等。

因此,第 1 行(索引 0)df对应于 df1 中的索引 11。同样,df 中的索引 2 对应于 df1..so 中的索引 21

我想连接两个数据框并做熊猫融化操作

我尝试了以下但它不起作用

df2 = df1.reset_index(drop=True)
t2 = pd.concat([df, df2], axis=1)
pd.melt(t2, id_vars =['subject_ID'], value_vars =['score','region','supplier','test_score','dumma','dummeel'])

我希望我的输出如下

在此处输入图像描述

不知道你为什么要这样做,但这里是代码

pd.melt(df.join(df1), id_vars=['subject_ID'], value_vars=['score','region','supplier'])



 subject_ID  variable  value
0         1001     score     27
1         1002     score     35
2         1003     score     29
3         1004     score     35
4         1005     score     30
5         1006     score     34
6         1001    region     AP
7         1002    region     AP
8         1003    region    ANZ
9         1004    region    ANZ
10        1005    region  KOREA
11        1006    region  KOREA
12        1001  supplier    ABC
13        1002  supplier    ABC
14        1003  supplier    DEF
15        1004  supplier    DEF
16        1005  supplier    GHI
17        1006  supplier    GHI

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章