【发布时间】:2023-03-21 04:40:01
【问题描述】:
我正在尝试通过使用多个列中的值来填充 pandas 数据框中的新列。原始列是0 或“1”,每个系列只有一个1。通过填充new_col = [1, 3, 7, 10],新列将对应于 df['A','B','C','D'],如下所示。 (1A 表示new_col = 1;如果B=1、new_col = 3 等)
df
A B C D
1 1 0 0 0
2 0 0 1 0
3 0 0 0 1
4 0 1 0 0
新的df 应该是这样的。
df
A B C D new_col
1 1 0 0 0 1
2 0 0 1 0 7
3 0 0 0 1 10
4 0 1 0 0 3
我尝试使用map、loc 和where,但似乎无法制定有效的方法来完成它。问题似乎非常接近to this。我看过的其他几篇帖子123。这些都没有显示如何根据列表有条件地使用多列来填充新列。
【问题讨论】:
标签: python list python-2.7 pandas