title: How to select all columns whose names start with X in a pandas DataFrame
body: <p>I have a DataFrame:</p>
  
  <pre><code>import pandas as pd
  import numpy as np
  
  df = pd.DataFrame({'foo.aa': [1, 2.1, np.nan, 4.7, 5.6, 6.8],
                     'foo.fighters': [0, 1, np.nan, 0, 0, 0],
                     'foo.bars': [0, 0, 0, 0, 0, 1],
                     'bar.baz': [5, 5, 6, 5, 5.6, 6.8],
                     'foo.fox': [2, 4, 1, 0, 0, 5],
                     'nas.foo': ['NA', 0, 1, 0, 0, 0],
                     'foo.manchu': ['NA', 0, 0, 0, 0, 0],})
  </code></pre>
  
  <p>I want to select values of 1 in columns starting with <code>foo.</code>. Is there a better way to do it other than:</p>
  
  <pre><code>df2 = df[(df['foo.aa'] == 1)|
  (df['foo.fighters'] == 1)|
  (df['foo.bars'] == 1)|
  (df['foo.fox'] == 1)|
  (df['foo.manchu'] == 1)
  ]
  </code></pre>
  
  <p>Something similar to writing something like:</p>
  
  <pre><code>df2= df[df.STARTS_WITH_FOO == 1]
  </code></pre>
  
  <p>The answer should print out a DataFrame like this:</p>
  
  <pre><code>   bar.baz  foo.aa  foo.bars  foo.fighters  foo.fox foo.manchu nas.foo
  0      5.0     1.0         0             0        2         NA      NA
  1      5.0     2.1         0             1        4          0       0
  2      6.0     NaN         0           NaN        1          0       1
  5      6.8     6.8         1             0        5          0       0
  
  [4 rows x 7 columns]
  </code></pre>