title: Dataframe from a character vector where variable name and its data were stored jointly
body: <p>I've this situation:</p>
  <pre><code>foo &lt;- data.frame(&quot;vars&quot; = c(&quot;animal: mouse | wks: 12 | site: cage | PI: 78&quot;,
                              &quot;animal: dog | wks: 32 | GI: 0.2&quot;,
                              &quot;animal: cat | wks: 8 | site: wild | PI: 13&quot;))
  </code></pre>
  <p>where variable names and relative data were stored in character strings like the above example. In particular, each <em>variable_name/its_data</em> unit were delimited by a <code>|</code>. After the <code>:</code> there is the relative data.</p>
  <p>I would like to have a final dataframe like this:</p>
  <pre><code>  animal  wks  site  PI   GI
    mouse   12   cage  78   NA
      dog   32   &lt;NA&gt;  NA  0.2
      cat    8   wild  13   NA
  </code></pre>