python Pandas : How to group group two colums into a common column

标签 python pandas dataframe

我从几个 CSV 文件创建了一个 pandas 数据框。

现在有一些列代表相同的内容。 我想将这些列分组到该数据框中的一个公共(public)列中。

Now:

0  X  Y
1  6  
2     7
3  1
4     5

我要:

0  X  
1  6  
2  7
3  1
4  5

谢谢。

最佳答案

假设那些是空字符串 ''

groupby 与可将 'Y' 转换为 'X' 的可调用项一起使用

df.mask(df.eq('')).groupby(lambda x: {'Y': 'X'}.get(x, x), axis=1).first()

   0  X
0  1  6
1  2  7
2  3  1
3  4  5

否则,忽略掩码

df.groupby(lambda x: {'Y': 'X'}.get(x, x), axis=1).first()

   0  X
0  1  6
1  2  7
2  3  1
3  4  5

关于 python Pandas : How to group group two colums into a common column,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53162292/

相关文章:

python - Pandas:保存某一类别特有的行

python - multiprocessing.pool.imap 是否有允许多个参数的变体(如星图)?

python - App Engine 内存缓存异步操作 get_multi_async

r - 计算 R 数据帧中的增长百分比

python - 分区(如果适用)

Pandas 对 OHLC 数据从 1 分钟到 1 小时重新采样

python - “复杂”对象没有属性 '__getitem__'

python - 有什么方法可以像 django makemessage 一样生成 Tornado 本地化 CSV 文件吗?

python - 'Timestamp' 对象没有属性 'timestamp'

python - 我的 pandas.cut 输出类别与 pandas 文档中显示的输出类别之间存在差异