跳转至

🔥AI副业赚钱星球

点击下面图片查看

郭震AI

小技巧3:使用 melt 如何对数据透视分析?

构造一个 DataFrame:

d = {\
"district_code": [12345, 56789, 101112, 131415],
"apple": [5.2, 2.4, 4.2, 3.6],
"banana": [3.5, 1.9, 4.0, 2.3],
"orange": [8.0, 7.5, 6.4, 3.9]
}

df = pd.DataFrame(d)
df

打印结果:

district_code   apple   banana  orange
0123455.23.58.0
1567892.41.97.5
21011124.24.06.4
31314153.62.33.9

5.2 表示 12345 区域的 apple 价格,并且 apple, banana, orange,这三列都是一种水果,那么如何把这三列合并为一列?

使用 pd.melt

具体参数取值,大家根据此例去推敲:

df = df.melt(\
id_vars = "district_code",
var_name = "fruit_name",
value_name = "price")
df

打印结果:

district_code   fruit_name  price
012345  apple   5.2
156789  apple   2.4
2101112 apple   4.2
3131415 apple   3.6
412345  banana  3.5
556789  banana  1.9
6101112 banana  4.0
7131415 banana  2.3
812345  orange  8.0
956789  orange  7.5
10101112    orange  6.4
11131415    orange  3.9

以上就是长 DataFrame,对应的原 DataFrame 是宽 DF.

大家在看

京ICP备20031037号-1 | AI之家 | AI资讯 | Python200 | 数据分析