【问题标题】:Row wise similar data compression Pandas逐行相似的数据压缩 Pandas
【发布时间】:2018-05-18 18:45:32
【问题描述】:

假设我有一个数据集

A B 
1 k 
1 g 
1 e 
2 g 
2 e 
3 d 

在对 pandas 应用一种热编码后,我得到:

A B_k B_g B_e . . . . 
1 1    0   0    
1 0    1   0    
1 0    0   1    
2 .
2 .
3 .

我希望输出是

A B_k B_g B_e 
1  1   1   1
2  0   1   0

等等。
我想在 [A] 列中将相似的行值 EG:1 一起作为一行和 OHE 列 [B]

提前谢谢你。

【问题讨论】:

  • 你的逻辑是什么?

标签: python pandas etl data-science


【解决方案1】:

也许crosstab

pd.crosstab(df.A,df.B)
B  d  e  g  k
A            
1  0  1  1  1
2  0  1  1  0
3  1  0  0  0

【讨论】:

  • 不确定这是否适用于我的情况。我想在 [A] 列和一个热编码列 [B] 中获得类似的原始数据
【解决方案2】:

一热编码后可以使用groupby

df.groupby(['A']).sum()
>>> 
    B_d  B_e  B_g  B_k
A                    
1    0    1    1    1
2    0    1    1    0
3    1    0    0    0

【讨论】:

    猜你喜欢
    • 2016-09-02
    • 1970-01-01
    • 1970-01-01
    • 2021-12-15
    • 2018-11-24
    • 1970-01-01
    • 1970-01-01
    • 2021-05-24
    • 1970-01-01
    相关资源
    最近更新 更多