class_docstr: Load FeatureSets from files on disk.
  
  This is the base class used to create featureset readers for different
  file types.
  
  Parameters
  ----------
  path_or_list : Union[:class:`skll.types.PathOrStr`, List[Dict[str, Any]]
      Path or a list of example dictionaries.
  
  quiet : bool, default=True
      Do not print "Loading..." status message to stderr.
  
  ids_to_floats : bool, default=False
      Convert IDs to float to save memory. Will raise error
      if we encounter an a non-numeric ID.
  
  label_col : Optional[str], default='y'
      Name of the column which contains the class labels
      for ARFF/CSV/TSV files. If no column with that name
      exists, or ``None`` is specified, the data is
      considered to be unlabelled.
  
  id_col : str, default='id'
      Name of the column which contains the instance IDs.
      If no column with that name exists, or ``None`` is
      specified, example IDs will be automatically generated.
  
  class_map : Optional[:class:`skll.types.ClassMap`], default=None
      Mapping from original class labels to new ones. This is
      mainly used for collapsing multiple labels into a single
      class. Anything not in the mapping will be kept the same.
      The keys are the new labels and the list of values for each
      key is the labels to be collapsed to said new label.
  
  sparse : bool, default=True
      Whether or not to store the features in a numpy CSR
      matrix when using a DictVectorizer to vectorize the
      features.
  
  feature_hasher : bool, default=False
      Whether or not a FeatureHasher should be used to
      vectorize the features.
  
  num_features : Optional[int], default=None
      If using a FeatureHasher, how many features should the
      resulting matrix have?  You should set this to a power
      of 2 greater than the actual number of features to
      avoid collisions.
  
  logger : Optional[logging.Logger], default=None
      A logger instance to use to log messages instead of creating
      a new one by default.
class_docstr_tok: ["Load","FeatureSets","from","files","on","disk",".","This","is","the","base","class","used","to","create","featureset","readers","for","different","file","types",".","Parameters","--","--","--","--","--","path_or_list",":","Union","[",":","class",":","`","skll.types.PathOrStr","`",",","List","[","Dict","[","str",",","Any","]","]","Path","or","a","list","of","example","dictionaries",".","quiet",":","bool",",","default=True","Do","not","print","``","Loading","...","''","status","message","to","stderr",".","ids_to_floats",":","bool",",","default=False","Convert","IDs","to","float","to","save","memory",".","Will","raise","error","if","we","encounter","an","a","non-numeric","ID",".","label_col",":","Optional","[","str","]",",","default=","'","y'","Name","of","the","column","which","contains","the","class","labels","for","ARFF\/CSV\/TSV","files",".","If","no","column","with","that","name","exists",",","or","``","None","``","is","specified",",","the","data","is","considered","to","be","unlabelled",".","id_col",":","str",",","default='id'","Name","of","the","column","which","contains","the","instance","IDs",".","If","no","column","with","that","name","exists",",","or","``","None","``","is","specified",",","example","IDs","will","be","automatically","generated",".","class_map",":","Optional","[",":","class",":","`","skll.types.ClassMap","`","]",",","default=None","Mapping","from","original","class","labels","to","new","ones",".","This","is","mainly","used","for","collapsing","multiple","labels","into","a","single","class",".","Anything","not","in","the","mapping","will","be","kept","the","same",".","The","keys","are","the","new","labels","and","the","list","of","values","for","each","key","is","the","labels","to","be","collapsed","to","said","new","label",".","sparse",":","bool",",","default=True","Whether","or","not","to","store","the","features","in","a","numpy","CSR","matrix","when","using","a","DictVectorizer","to","vectorize","the","features",".","feature_hasher",":","bool",",","default=False","Whether","or","not","a","FeatureHasher","should","be","used","to","vectorize","the","features",".","num_features",":","Optional","[","int","]",",","default=None","If","using","a","FeatureHasher",",","how","many","features","should","the","resulting","matrix","have","?","You","should","set","this","to","a","power","of","2","greater","than","the","actual","number","of","features","to","avoid","collisions",".","logger",":","Optional","[","logging.Logger","]",",","default=None","A","logger","instance","to","use","to","log","messages","instead","of","creating","a","new","one","by","default","."]
docstr: Print out progress numbers in proper format.
  
  Nothing gets printed if ``self.quiet`` is ``True``.
  
  Parameters
  ----------
  progress_num: Union[int, str]
      Progress indicator value. Usually either a line
      number or a percentage. Must be able to convert to string.
  
  end : str, default='\r'
      The string to put at the end of the line.  "\r" should be
      used for every update except for the final one.
docstr_tok: ["Print","out","progress","numbers","in","proper","format",".","Nothing","gets","printed","if","``","self.quiet","``","is","``","True","``",".","Parameters","--","--","--","--","--","progress_num",":","Union","[","int",",","str","]","Progress","indicator","value",".","Usually","either","a","line","number","or","a","percentage",".","Must","be","able","to","convert","to","string",".","end",":","str",",","default='\\r'","The","string","to","put","at","the","end","of","the","line",".","``","\\r","''","should","be","used","for","every","update","except","for","the","final","one","."]
code: def _print_progress(self, progress_num: Union[int, str], end="\r"):
      r"""
      Print out progress numbers in proper format.
  
      Nothing gets printed if ``self.quiet`` is ``True``.
  
      Parameters
      ----------
      progress_num: Union[int, str]
          Progress indicator value. Usually either a line
          number or a percentage. Must be able to convert to string.
  
      end : str, default='\r'
          The string to put at the end of the line.  "\r" should be
          used for every update except for the final one.
      """
      # Print out status
      if not self.quiet:
          print(
              f"{self._progress_msg}{progress_num:>15}",
              end=end,
              file=sys.stderr,
          )
          sys.stderr.flush()
  
imports: import csv
  import json
  import logging
  import re
  import sys
  from io import StringIO
  from itertools import chain
  from numbers import Number
  from pathlib import Path
  from typing import IO, Any, Dict, List, Optional, Tuple, Union
  import numpy
  import pandas
  from bs4 import UnicodeDammit
  from sklearn.feature_extraction import FeatureHasher
  from skll.data import FeatureSet
  from skll.data.dict_vectorizer import DictVectorizer
  from skll.types import ClassMap, FeatGenerator, FeatureDictList, IdType, LabelType, PathOrStr
label_desc: Use image node_id 4 for calling the Reader obj's underlying member method code with example usage: obj._print_progress(progress_num, end) without return types