python - 如何 reshape 数据框以保留唯一信息?

标签 python pandas dataframe

我有一个数据框df1,其中包含代理之间的交互信息及其状态。

df1
     Name1   Name2  Name1_x Y_x Name1_y Y_y
0    Jack    John   Jack     0  John     1
1    Sarah   Jack   Sarah    0  Jack     0
2    Sarah   Eva    Sarah    0  Eva      1
3    Eva     Tom    Eva      1  Tom      0
4    Eva     John   Eva      1  John     1

我想要一个名称和状态为y的数据框,例如

df2
     Name   Y
0    Eva    1
1    John   1
2    Tom    0
3    Sarah  0
4    Jack   0

最佳答案

您可以使用:

df2 = pd.DataFrame(np.r_[df1.iloc[:,2:4], df1.iloc[:,4:6]], columns=['Name', 'Y']).drop_duplicates().reset_index(drop=True)

输出:

    Name  Y
0   Jack  0
1  Sarah  0
2    Eva  1
3   John  1
4    Tom  0

关于python - 如何 reshape 数据框以保留唯一信息?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53315820/

相关文章:

python - 逐行求和,得到占总数 x % 的列

python - 为什么这是有效的 Python?

python - 为什么我会收到 "Traceback (most recent call last):"错误?

python - pandas 中的SettingWithCopyWarning : how to set the first value in a column?

r cumsum-like 函数,用于分割数据帧

python - numpy 或 python 中的等效 matlab 函数 mod

Python 计算特定列的相同值

python - conda 创建-n 测试 pandas=0.12.0 (?)

python - 如何将列表列表转换为第一个元素是索引,第二个是列名的数据框

python - 将具有可变长度字典列表的字典转换为 pandas 数据帧