根据Pandas中的另一个DataFrame修改DataFrame

问题描述 投票:2回答:1

我有这两个数据帧

df1

       Product     Quantity   Price  Description
  0    bread           3        12    desc1
  1    cookie          5        10    desc2
  2    milk            7        15    desc3
  3    sugar           4        7     desc4
  4    chocolate       5        9     desc5



 df2
           Attribute   Configuration
      0    Product           C       
      1    Quantity          C       
      2    Price             D        
      3    Description       D       

我想要做的是如果字母D在df2的Configuration列中。整个行在df1中删除。

所以df2就像用这个配置创建另一个数据帧的方式一样。

条件可能是......

if df2.Configuration == 'D'
   df1.drop when df1.header = df2.Attribute

我有点提出这个想法,但我不确定是这样的。我可以做什么?

结果应该是这样的......

df3

       Product     Quantity  
  0    bread           3      
  1    cookie          5        
  2    milk            7       
  3    sugar           4        
  4    chocolate       5       
python python-3.x pandas dataframe
1个回答
0
投票

运用

df1.drop(df2.loc[df2.Configuration=='D','Attribute'].tolist(),1)
     Product  Quantity
0      bread         3
1     cookie         5
2       milk         7
3      sugar         4
4  chocolate         5
© www.soinside.com 2019 - 2024. All rights reserved.