根据另一个数据框中的值将列添加到数据框中

matteo112

我有两个数据框,第一个:

df1

   product     price
0  apples      1.99
1  bananas     1.20 
2  oranges     1.49
3  lemons      0.5
4  Olive Oil   8.99

df2:

   product     product.1     product.2 
0  apples      bananas       Olive Oil
1  bananas     lemons        oranges
2  Olive Oil   bananas       oranges
3  lemons      apples        bananas

我希望第二个数据框中的一列是基于第一个数据框中每个项目的价格的价格总和。因此,理想的结果将是:

   product     product.1     product.2     total_price 
0  apples      bananas       Olive Oil     12.18
1  bananas     lemons        oranges       3.19
2  Olive Oil   bananas       oranges       11.68
3  lemons      apples        bananas       3.69

做到这一点的最佳方法是什么?我尝试过合并df2中每个列的名称上的数据帧,但这似乎很耗时,尤其是当df1获取更多的行而df2获取更多的列时。

df = pd.merge(df1, df2, how='right', left_on='product', right_on='product')
df = pd.merge(df1, df2, how='right', left_on='product', right_on='product.1')
df = pd.merge(df1, df2, how='right', left_on='product', right_on='product.2') 
df['Total_Price'] = df['price']+df['price.1']+df['price.2']
学生

您可以尝试以下操作:

  1. 首先,将df1转换为键和值的字典
  2. 在上面使用字典,applymap后跟sum

可能在以下代码片段中会执行类似的操作:

dictionary_val = { k[0]: k[1] for k in df1.values }
df2['Total_Price'] = df2.applymap(lambda row: dictionary_val[row]).sum(axis=1) # Note not creating new dataframe but using existing one

那么结果是df2

    product    product.1    product.2   Total_Price
0   apples      bananas     Olive Oil    12.18
1   bananas     lemons      oranges      3.19
2   Olive Oil   bananas     oranges      11.68
3   lemons      apples      bananas      3.69

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

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

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

将一个数据框的列添加到另一个数据框,以获取重叠列中的值

来自分类Dev

将数据框列添加到另一个数据框

来自分类Dev

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

来自分类Dev

R-使用另一个数据框的匹配值将新列添加到数据框

来自分类Dev

根据R中两个数据框的两列中的匹配对名称,将值添加到另一个数据框的其他值中

来自分类Dev

根据另一个数据框的行值在数据框中添加新列

来自分类Dev

如何将值从数据框添加到另一个数据框以获取正确的索引?

来自分类Dev

根据另一个数据集中的列值在一个数据框中创建列

来自分类Dev

如何在R bu中对数据框进行子集提取,以及如何基于类似的列将一个数据框的列添加到另一个数据框

来自分类Dev

根据另一个数据框计算数据框中的列值

来自分类Dev

如何根据熊猫的条件将缺失的行从一个数据框添加到另一个数据框?

来自分类Dev

根据来自另一个数据框的两个行值的对应值将列添加到数据框

来自分类Dev

根据关键列值熊猫将一个数据框中的行与另一个数据框中的行匹配

来自分类Dev

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

来自分类Dev

根据id列中的公共值从另一个数据框中减去数据框的行

来自分类Dev

根据另一个数据框中的匹配条件将列添加到R中的数据框中

来自分类Dev

根据R中的两个匹配条件,将值从一个数据帧添加到另一个数据帧

来自分类Dev

将条件添加到另一个数据框上的条件的数据框

来自分类Dev

将数据框列添加到另一个数据框

来自分类Dev

根据来自另一个数据框的计数将列添加到数据框

来自分类Dev

R Studio:将数据框的列添加到另一个数据框(合并)

来自分类Dev

根据条件,将数据框的某些值替换为另一个数据框中的值

来自分类Dev

如何使用另一个数据框将列添加到数据框?

来自分类Dev

熊猫:根据另一个数据框中的值在数据框中添加新列

来自分类Dev

根据另一个数据框中的日期过滤数据框中的值

来自分类Dev

如果前两列都匹配,则将数据框的一列中的值添加到另一个数据框的新列中

来自分类Dev

如何根据特定规则将一个数据框中的列添加到另一个数据框中

来自分类Dev

将一个数据框中的一列元素添加到另一个数据框中另一列的元素

来自分类Dev

如何根据另一个数据框中的部分字符串匹配将一列添加到一个数据框中?

Related 相关文章

  1. 1

    将一个数据框的列添加到另一个数据框,以获取重叠列中的值

  2. 2

    将数据框列添加到另一个数据框

  3. 3

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

  4. 4

    R-使用另一个数据框的匹配值将新列添加到数据框

  5. 5

    根据R中两个数据框的两列中的匹配对名称,将值添加到另一个数据框的其他值中

  6. 6

    根据另一个数据框的行值在数据框中添加新列

  7. 7

    如何将值从数据框添加到另一个数据框以获取正确的索引?

  8. 8

    根据另一个数据集中的列值在一个数据框中创建列

  9. 9

    如何在R bu中对数据框进行子集提取,以及如何基于类似的列将一个数据框的列添加到另一个数据框

  10. 10

    根据另一个数据框计算数据框中的列值

  11. 11

    如何根据熊猫的条件将缺失的行从一个数据框添加到另一个数据框?

  12. 12

    根据来自另一个数据框的两个行值的对应值将列添加到数据框

  13. 13

    根据关键列值熊猫将一个数据框中的行与另一个数据框中的行匹配

  14. 14

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

  15. 15

    根据id列中的公共值从另一个数据框中减去数据框的行

  16. 16

    根据另一个数据框中的匹配条件将列添加到R中的数据框中

  17. 17

    根据R中的两个匹配条件,将值从一个数据帧添加到另一个数据帧

  18. 18

    将条件添加到另一个数据框上的条件的数据框

  19. 19

    将数据框列添加到另一个数据框

  20. 20

    根据来自另一个数据框的计数将列添加到数据框

  21. 21

    R Studio:将数据框的列添加到另一个数据框(合并)

  22. 22

    根据条件,将数据框的某些值替换为另一个数据框中的值

  23. 23

    如何使用另一个数据框将列添加到数据框?

  24. 24

    熊猫:根据另一个数据框中的值在数据框中添加新列

  25. 25

    根据另一个数据框中的日期过滤数据框中的值

  26. 26

    如果前两列都匹配,则将数据框的一列中的值添加到另一个数据框的新列中

  27. 27

    如何根据特定规则将一个数据框中的列添加到另一个数据框中

  28. 28

    将一个数据框中的一列元素添加到另一个数据框中另一列的元素

  29. 29

    如何根据另一个数据框中的部分字符串匹配将一列添加到一个数据框中?

热门标签

归档