title: Column dtype with pandas read_json
body: <p>I have a json file that looks like this:</p>
  
  <pre><code>[{"A": 0, "B": "x"}, {"A": 1, "B": "y", "C": 0}, {"A": 2, "B": "z", "C": 1}]
  </code></pre>
  
  <p>Since the "C" column contains a NaN value (first row), pandas automatically infers that its dtype is "float64":</p>
  
  <pre><code>&gt;&gt;&gt; pd.read_json(path).C.dtype
  dtype('float64')
  </code></pre>
  
  <p>However, I want the dtype of the "C" column to be "Int32". <code>pd.read_json(path, dtype={"C": "Int32"})</code> does not work:</p>
  
  <pre><code>&gt;&gt;&gt; pd.read_json(path, dtype={"C": "Int32"}).C.dtype
  dtype('float64')
  </code></pre>
  
  <p>Instead, <code>pd.read_json(path).astype({"C": "Int32"})</code> does work:</p>
  
  <pre><code>&gt;&gt;&gt; pd.read_json(path).astype({"C": "Int32"}).C.dtype
  Int32Dtype()
  </code></pre>
  
  <p>Why does this happen? How can I set the correct dtype by only using the <code>pd.read_json</code> function?</p>