gpt4 book ai didi

python - 在Python(Pandas)中,如何生成这样的分类值的交叉表?

转载 作者:行者123 更新时间:2023-12-01 07:58:29 24 4
gpt4 key购买 nike

我有一个像这样的 Pandas 数据框

    device_id   content
a X
a Z
b Y
c X
c Y
d Z
e Z
e Y
e X

它包含设备访问的各种内容的数据。两列中可以有重复的值。我想生成一个交叉表,其中表中的单元格 [i,j] 表示有多少人(设备 ID)访问了内容 ij 。像这样 -

        X   Y   Z
X 0 2 1
Y 2 0 1
Z 1 1 0

例如,table[X,Y] = 2 告诉我有 2 个人观看了 X 和 Y。如何生成此交叉表?

最佳答案

我相信你需要:

df = df.merge(df, on='device_id')
df = pd.crosstab(df['content_x'], df['content_y'])
print (df)
content_y X Y Z
content_x
X 3 2 2
Y 2 3 1
Z 2 1 3

关于python - 在Python(Pandas)中,如何生成这样的分类值的交叉表?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55826660/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com