python - 如何根据索引将某个值分配给熊猫数据框中的新列
问题描述
假设我有两个 pandas 数据框,一个实际上更像一个系列
import pandas as pd
import numpy as np
A = pd.DataFrame(index=[0, 1, 2], data=[[1, 2, 3], [4, 5, 6] ,[7,8,9]],columns=["I", "L","P"])
B = pd.DataFrame(index=[1, 3, 4], data=[[10], [40] ,[70]])
我想向 A 添加一个名为“B”的新列,其值取决于索引。这意味着如果索引元素在 A 和 B 上共享,则应添加 B 的该行(对应于该索引)的值。否则为 0。结果应如下所示
A = pd.DataFrame(index=[0, 1, 2], data=[[1, 2, 3,0], [4, 5, 6,10] ,[7,8,9,0]],columns=["I", "L","P","B"])
A
如何在 Python / pandas 中有效地实现这一点?
解决方案
reindex
与分配
A['B'] = B[0].reindex(A.index,fill_value=0)
A
Out[55]:
I L P B
0 1 2 3 0
1 4 5 6 10
2 7 8 9 0
推荐阅读
- javascript - Python list 如何识别给定的数字是否在范围内挑战问题
- azure - Azure arm 输出应用服务的 IP
- javascript - 如何从 JAVASCRIPT 框架代码访问 JBOSS 系统属性?
- flutter - 如何在flutter android和iOS中获取用户手机号码
- nuxt.js - 如何进行 nuxt-content 提取连接(或深度提取)?
- python - 使用 Azure 认知服务从 gif 图像中读取文本
- java - java线程同步和锁定没有效果?
- css - 溢出:隐藏和浮动
- wordpress - 在 Buddypress 网站上共享时,Facebook 发布实时预览不显示
- javascript - 单击 url,重定向到另一个页面并向下滚动到隐藏的锚定 div