如何根据第一个的索引和第二个的列值将数据框的所有列值复制到另一个的新列中

埃德加·乌巴尔多·佩尼亚

我有以下数据框 1 df1:

index    tech_1    tech_2   tech_3 .....
01_es      NA         NA        1
02_es       1         2         NA
03_es       2         1         2
04_es       1         NA        2
05_es       NA        NA        NA

和另一个数据框 2 df2:

index        id    column_1   column_2  column_3
0         01_es       data      data       data
1         02_es       data      data       data
2         03_es       data      data       data
3         04_es       data      data       data
4         05_es       data      data       data

每当 df1.index 将 df2.id 匹配到新的 df2.columns 时,我想将 df1“合并”到 df2 中,并将所有数据保留在 df2 上。我将用几个 df1.

新的df2:

index        id    column_1   column_2  column_3 tech_1    tech_2   tech_3 
0         01_es       data      data       data   NA        NA        1
1         02_es       data      data       data    1         2        NA
2         03_es       data      data       data    2         1        2
3         04_es       data      data       data    1        NA        2
4         05_es       data      data       data   NA        NA        NA

df1 可能非常大,具有不同的列数,并且可能不是所有的行都是 df2.id。我有几个文件可以运行脚本。我该怎么做?

谢谢!

阿尼什·慕克吉

在此处查看文档https://pandas.pydata.org/pandas-docs/stable/reference/api/pandas.DataFrame.merge.html

如果保证dataframe df2 的id 列是唯一的,则可以将其设置为索引并进行合并。

df2.set_index('id').merge(df1, left_index=True, right_index=True)

现在对于 df1 中存在不同列的情况,您可以通过传递“how”参数进行合并来定义您的偏好,阅读文档了解详细信息。

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

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

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

如何为第一个数据帧中匹配的特定列值的所有值获取第二个数据帧的数据?

pandas:如果该值在第二个数据框中,则根据另一个数据框中的条件替换列中的值

根据列值将数据从一个熊猫数据框复制到另一个

根据多列索引将值从一个数据框复制到另一个数据框

根据Pandas中的ID将列值从一个数据框复制到另一个数据框

如何根据列名将一个数据框中的列值复制到另一个数据框中?

根据第二个数据帧中 2 列中的值,为第一个数据帧中的某些列添加后缀

从第二个表中选择所有数据,第二个表中的名称等于第一个表中的列值

熊猫从第二个数据框中选择的列,其中另一个列的值存在于主数据框中

如何在将两个列中的公共列值匹配的同时将列从pandas数据框复制到另一个?

根据第一个数据列的值对第二个数据表中的行进行计数而不合并

根据第一个表中的列在第二个表中插入新记录

熊猫如何将列复制到具有相似索引的另一个数据框

根据另一个数据框的索引替换所有列值

如果第二个数据框中条目的值在 R 中的前 50% 之列,则用另一个数据框中的一列覆盖一个数据框中的列

如何从第一个表和第二个表中检索所有数据

如何比较两个文件中的列并打印第一个文件的第一列和第二个文件的第二列以及缺失值NA?

使用指针将第一个(二维)数组的值复制到第二个数组的函数

比较一个表中2个列值的总和与第二个表SQL Server中另一个列的值

将一个熊猫数据帧合并到另一个熊猫数据帧,并从第二个数据帧中删除第一个数据帧中存在的值

Python:根据第一个列表索引确定第二个列表中的值

如何将第一个数据框中的列与第二个数据框中的列进行比较,并在匹配时从第二个数据框中的另一列中提取值

从一个表中获取所有列的值,并从第二个表中获取另一列的值

SQL:选择第一列的第一个匹配项,第二个值不同

根据熊猫中第二个数据框的列值从一个数据框删除列

如何为每行返回一系列列中的第一个非NULL值?第二个非NULL值?

如何将列中具有特定值的行复制到另一个工作表?

在Python中,如何根据一个列中的值比较两个csv文件,并从第一个文件输出与第二个不匹配的记录

如果我有RDD [(String,String)],如何将元组的第一个元素保存到一个文件中,然后将第二个元素存储到另一个文件中?