title: Picking random entries from dictionary based on value
body: <p>I have a dictionary with restaurants and a type of restaurant like this: <code>Dictionary&lt;Restaurant, string&gt;</code> Where restaurants is my class and for simplicity I use a string for my type of restaurant.</p>
  
  <p>Let's say I have 25 entries in my list, where there can be groups of 3, 4 or 5 restaurants with the same type. Now I want to narrow this down to select 1 random element per type.</p>
  
  <p>I have found <a href="https://stackoverflow.com/questions/1028136/random-entry-from-dictionary">this</a> page which explains how to pick random values from a dictionary, but how would I go around picking a random entry per grouping of type?</p>
  
  <p>Let me know if I should elaborate more or if you need additional information!</p>
  
  <p>Edit: example of my code:</p>
  
  <pre><code>Dictionary&lt;Restaurant, string&gt; restaurants = new Dictionary&lt;Restaurant, string&gt;();
  
  randomRestaurants.Add(restaurants.GroupBy(x =&gt; x.string).//Randomly pick an entry per grouping and add it to list//
  
  List&lt;Restaurant&gt; randomRestaurants = new List&lt;Restaurant&gt;();
  </code></pre>
  
  <p>For example: Possible types can be <code>Italian</code>, <code>Fast food</code> and <code>Sushi</code></p>
  
  <p><strong>I would like to apologize for asking another confusing question. I'll pay more attention before I post something.</strong></p>