title: Pandas, concat Series to DF as rows
body: <p>I attempting to add a Series to an empty DataFrame and can not find an answer
  either in the Doc's or other questions.  Since you can append two DataFrames by row
  or by column it would seem there must be an "axis marker" missing from a Series.  Can
  anyone explain why this does not work?.</p>
  
  <pre><code>import Pandas as pd
  df1 = pd.DataFrame()
  s1 = pd.Series(['a',5,6])
  df1 = pd.concat([df1,s1],axis = 1)
  #go run some process return s2, s3, sn ...
  s2 = pd.Series(['b',8,9])
  df1 = pd.concat([df1,s2],axis = 1)
  s3 = pd.Series(['c',10,11])
  df1 = pd.concat([df1,s3],axis = 1)
  </code></pre>
  
  <blockquote>
    <p>If my example above is some how misleading perhaps using the example from the docs will help.</p>
    
    <p>Quoting:  Appending rows to a DataFrame.<br>
    While not especially efficient (since a new object must be created), you can append a
    single row to a DataFrame by passing a Series or dict to append, which returns a new DataFrame as above.  End Quote.</p>
    
    <p>The example from the docs appends "S", which is a row from a DataFrame, "S1" is a Series
    and attempting to append "S1" produces an error.  My question is WHY will appending "S1  not work?  The assumption behind the question is that a DataFrame must code or contain axes information for two axes, where a Series must contain only information for one axes.</p>
  
  <pre><code>df = pd.DataFrame(np.random.randn(8, 4), columns=['A','B','C','D'])
  s = df.xs(3); #third row of DataFrame
  s1 = pd.Series([np.random.randn(4)]); #new Series of equal len
  df= df.append(s, ignore_index=True)
  </code></pre>
  </blockquote>
  
  <p>Result</p>
  
  <pre><code>   0  1
  
  0  a  b
  
  1  5  8
  
  2  6  9
  </code></pre>
  
  <p>Desired</p>
  
  <pre><code>   0  1 2
  
  0  a  5 6
  
  1  b  8 9
  </code></pre>