title: How to read JSON string from a line in csv file?
body: <p>I'm new to MapReduce and MRjob, I am trying to read a csv file that I want to process using MRjob in python. But it has about 5 columns with JSON strings(eg. {}) or an array of JSON strings (eg. [{},{}]), some of them are nested.</p>
  
  <p>My mapper so far looks as follows:</p>
  
  <pre class="lang-py prettyprint-override"><code>from mrjob.job import MRJob
  import csv
  from io import StringIO
  
  class MRWordCount(MRJob):
      def mapper(self, _, line):
          l = StringIO(line)
          reader = csv.reader(l) # returns a generator.
  
          for cols in reader:
              columns = cols
  
          yield None, columns
  </code></pre>
  
  <p>I get the error -</p>
  
  <blockquote>
    <p>_csv.Error: field larger than field limit (131072)</p>
  </blockquote>
  
  <p>But that seems to happen because my code separates the JSON strings into separate columns as well (because of the commas inside).</p>
  
  <p>How do I make this, so that the JSON strings are not split? Maybe I'm overlooking something?</p>
  
  <p>Alternatively, is there any other ways I could read this file with MRjob that would make this process simpler or cleaner?</p>