MCPcopy
hub / github.com/pandas-dev/pandas / __init__

Method __init__

pandas/io/parsers/c_parser_wrapper.py:65–174  ·  view source on GitHub ↗
(self, src: ReadCsvBuffer[str], **kwds)

Source from the content-addressed store, hash-verified

63 _reader: parsers.TextReader
64
65 def __init__(self, src: ReadCsvBuffer[str], **kwds) -> None:
66 super().__init__(kwds)
67 self.kwds = kwds
68 kwds = kwds.copy()
69
70 self.low_memory = kwds.pop("low_memory", False)
71
72 # #2442
73 kwds["allow_leading_cols"] = self.index_col is not False
74
75 # GH20529, validate usecol arg before TextReader
76 kwds["usecols"] = self.usecols
77
78 # Have to pass int, would break tests using TextReader directly otherwise :(
79 kwds["on_bad_lines"] = self.on_bad_lines.value
80
81 for key in (
82 "storage_options",
83 "encoding",
84 "memory_map",
85 "compression",
86 ):
87 kwds.pop(key, None)
88
89 kwds["dtype"] = ensure_dtype_objs(kwds.get("dtype", None))
90 if "dtype_backend" not in kwds or kwds["dtype_backend"] is lib.no_default:
91 kwds["dtype_backend"] = "numpy"
92 if kwds["dtype_backend"] == "pyarrow":
93 # Fail here loudly instead of in cython after reading
94 import_optional_dependency("pyarrow")
95 self._reader = parsers.TextReader(src, **kwds)
96
97 self.unnamed_cols = self._reader.unnamed_cols
98
99 passed_names = self.names is None
100
101 if self._reader.header is None:
102 self.names = None
103 else:
104 (
105 self.names,
106 self.index_names,
107 self.col_names,
108 passed_names,
109 ) = self._extract_multi_indexer_columns(
110 self._reader.header,
111 self.index_names,
112 passed_names,
113 )
114
115 if self.names is None:
116 self.names = list(range(self._reader.table_width))
117
118 # gh-9755
119 #
120 # need to set orig_names here first
121 # so that proper indexing can be done
122 # with _set_noconvert_columns

Callers

nothing calls this directly

Calls 12

is_index_colFunction · 0.90
ensure_dtype_objsFunction · 0.85
_clean_index_namesMethod · 0.80
copyMethod · 0.45
popMethod · 0.45
getMethod · 0.45

Tested by

no test coverage detected