title: How to incorporate projected columns in scanner into new dataset partitioning
body: <p>Let's say I load a dataset</p>
  <pre><code>myds=ds.dataset('mypath', format='parquet', partitioning='hive')
  myds.schema
  # On/Off_Peak: string
  # area: string
  # price: decimal128(8, 4)
  # date: date32[day]
  # hourbegin: int32
  # hourend: int32
  # inflation: string rename to Inflation
  # Price_Type: string
  # Reference_Year: int32
  # Case: string
  # region: string rename to Region
  </code></pre>
  <p>My end goal is to resave the dataset with the following projection:</p>
  <pre><code>projection={'Region':ds.field('region'),
              'Date':ds.field('date'),
              'isPeak':pc.equal(ds.field('On/Off_Peak'),ds.scalar('On')),
              'Hourbegin':ds.field('hourbegin'),
              'Hourend':ds.field('hourend'),
              'Inflation':ds.field('inflation'),
              'Price_Type':ds.field('Price_Type'),
              'Area':ds.field('area'),
              'Price':ds.field('price'),
              'Reference_Year':ds.field('Reference_Year'),
              'Case':ds.field('Case'),
              }
  </code></pre>
  <p>I make a scanner</p>
  <pre><code>scanner=myds.scanner(columns=projection)
  </code></pre>
  <p>Now I try to save my new dataset with</p>
  <pre><code>ds.write_dataset(scanner, 'newpath',
                  partitioning=['Reference_Year', 'Case', 'Region'], partitioning_flavor='hive',
                  format='parquet')
  </code></pre>
  <p>but I get</p>
  <pre><code>KeyError: 'Column Region does not exist in schema'
  </code></pre>
  <p>I can work around this by changing my <code>partitioning</code> to <code>['Reference_Year', 'Case', 'region']</code> to match the non-projected columns (and then later changing the name of all those directories) but is there a way to do it directly?</p>
  <p>Suppose my partitioning needed the compute for more than just the column name changing.  Would I have to save a non-partitioned dataset in one step to get the new column and then do another save operation to create the partitioned dataset?</p>