Python Pandas-在特定行上添加列,将特定行从一个数据框添加到另一个

优加里

拼命地尝试了7个小时,但还没有想出解决方案。所以我有2个要使用python pandas结合以下条件的数据框:

  1. 从“第一张表”中的名称中,添加“第二张表”中其余具有相同名称的列
  2. 如果在“第二张表”中找不到名称,请将其留空
  3. 如果名称出现在“第二张表”中,但没有出现在“第一张表”中,则在数据框中在“第二张表”中添加一个带有“数字”和“描述”(无名称)的新行

第一个表示例:

    Name
 0  Apple
 1   Bear
 2    Car
 3    Dog

第二个表格示例:

       Name  Number   Description
0     Apple       1    I am apple
1      Bear       2  you are bear
2       Dog       4   so are dogs
3  Elephant       5           moo

理想结果:

    Name  Number   Description
0  Apple     1.0    I am apple
1   Bear     2.0  you are bear
2    Car     NaN           NaN
3    Dog     4.0   so are dogs
4    NaN     5.0           moo

我已经尝试过合并,但是它不起作用(熊猫内部和外部合并的方式都会给出错误的结果)一旦包含更多条件,我将收到很多错误。

我到了这一点(在“ secondtable”中找到了“ firsttable”行的名称)

for a in firsttable['Name']:
    for b in secondtable['Name']:
        if a == b:
            row = pd.DataFrame(secondtable.loc[(secondtable['Name']== b)])

但是之后,我无法将其添加到数据框中。谢谢您的帮助!

耶斯列尔

使用外部联接,DataFrame.merge然后通过以下方法对不匹配的值进行设置NaN(默认值)Series.wheredf1['Name']Series.isin

df = df1.merge(df2, on='Name', how='outer')
df['Name'] = df['Name'].where(df['Name'].isin(df1['Name']))
print (df)
    Name  Number   Description
0  Apple     1.0    I am apple
1   Bear     2.0  you are bear
2    Car     NaN           NaN
3    Dog     4.0   so are dogs
4    NaN     5.0           moo

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

将列从一个数据框添加到另一个python pandas

Python Pandas根据在另一个数据框中的查找将列添加到数据框

Python Pandas-通过将标签匹配到列将值从一个数据框添加到另一个数据框

Python:从一个数据框获取值并添加到另一个数据框(行和列条件)

如何将一段字符串从一个 df 列添加到 python/pandas 中的另一个?

如果另一个是 NaN,则 Python Pandas 将值添加到新行

将日期(系列)列从一个DataFrame添加到其他Pandas,Python

Python / Pandas:根据另一个数据框过滤和组织数据框的行和列

在python,pandas中使用另一个数据框的多列选择一个数据框的行

Python [pandas]:通过另一个数据框的索引选择某些行

Python:将一个数据框的值添加到另一数据框的某些行

Python:将值从一个数据框添加到另一个(具有多个条件)

根据 Pandas Python 中另一个数据帧的条件从一个数据帧中删除行

Python Pandas:一个数据框中的列的行值变成另一数据框中的列

Python pandas dataframe将元素添加到先前的行值并创建一个新列

Python / Pandas:如果存在匹配项,则将值从一个df添加到另一df的行末

针对一个特定列,使用来自另一数据框的数据更新一个数据框-Pandas和Python

Python Pandas:将数据框从一个导入库传递到另一个

根据另一个Pandas列中的条件添加到python列表的正确方法是什么?

使用Pandas Python将NaN值替换为另一个数据框

Pandas-具有另一个数据框python的索引列表的列

Python Pandas:根据另一个数据框的类别值创建新列

Python Pandas-有条件地覆盖另一个数据框中的x行

使用python pandas查找并删除另一个数据框中不存在的行

Python pandas数据框:数据框到另一个数据框

通过匹配变量将值从一个 Pandas 数据帧添加到另一个数据帧

Python Pandas从另一个数据框更新一个数据框值

从一个数据框中获取列名称,并将其作为空列添加到pandas的另一个数据框中

Pandas 按列将数据框添加到另一个行中,将另一个列中不可用的列设置为“nan”