python - 将两个数据框合并为一个新的数据框,其唯一项目标有 1 或 0

标签 python pandas dataframe

我有几个数据框。

数据框 #1

Feature   Coeff
a         0.5
b         0.3
c         0.35
d         0.2

数据框 #2

Feature   Coeff
a         0.7
b         0.2
y         0.75
x         0.1

我想合并这个数据框并获得以下数据框:

Feature |  DF1  |  DF2
a          1       1
b          1       1
c          1       0
d          1       0
y          0       1
x          0       1

我知道我可以做一个 outer merge 但我不知道如何从那里移动以获得我上面展示的最终数据帧。有什么想法吗?

最佳答案

使用 concat+ get_dummies

u = pd.concat([df1, df2], axis=0, keys=['DF1', 'DF2'])

pd.get_dummies(u.Feature).sum(level=0).T

   DF1  DF2
a    1    1
b    1    1
c    1    0
d    1    0
x    0    1
y    0    1

关于python - 将两个数据框合并为一个新的数据框,其唯一项目标有 1 或 0,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56826251/

相关文章:

python - 基本方法链

python - 为什么来自 scipy.stats.bartlett 的 Bartlett 测试将 nan 作为输出?

python - 从 Pandas DataFrame 列中删除特定符号(unicode)

python - 扭曲属性错误

python - pyqt安装问题

python - 比较两个不同数据框的两列并使用 If 条件创建新列

python - 按时间戳和列组合 Pandas DataFrame 行

python - 使用 Pandas 执行时间间隔分析的最佳方法?

machine-learning - 如何在 pandas python 中以特定顺序重新排序某些行

r - 如何根据字符(小于号, "<")的出现重新计算数据框中的值?