title: How to find the row of a dataframe from column value then update row with dictionary?
body: <p>I have a dataframe of the form:</p>
  
  <pre><code>import pandas as pd
  df = pd.DataFrame(None,columns= ['Name','Age','Asset'])
  df = df.append({'Name':'John','Age':10,'Asset':'Bike'},ignore_index=True)
  df = df.append({'Name':'Sarah','Age':17,'Asset':'Laptop'},ignore_index=True)
  df = df.append({'Name':'Noah','Age':14,'Asset':'Book'},ignore_index=True)
  df
  
      Name    Age     Asset
  0   John    10  Bike
  1   Sarah   17  Laptop
  2   Noah    14  Book
  </code></pre>
  
  <p>Now I want to take a dictionary <code>{'Name' :'John','Age':11,'Asset' :'Phone'}</code> and finds the row of the df with name John, change the age to 11 and Change the Asset to 'Phone'. Assume every column of the dataframe is a key in the dicionary.</p>
  
  <p>since iloc retrieves a row, I thought this would work,</p>
  
  <pre><code>df.loc[df['Name'] == 'John'] = {'Name' :'John','Age':11,'Asset' :'Phone'}
  </code></pre>
  
  <p>However, this doesn't work and you need to update with a list.</p>
  
  <p>What's the efficient way to update a dataframe row with a dictionary?</p>