/usr/local/lib64/python3.6/site-packages/pyarrow
NameSizeModeActions
include/-0755rm
includes/-0755rm
tensorflow/-0755rm
tests/-0755rm
vendored/-0755rm
__pycache__/-0755rm
array.pxi796090644editdlrm
benchmark.pxi8690644editdlrm
benchmark.py8560644editdlrm
builder.pxi26880644editdlrm
cffi.py21780644editdlrm
compat.pxi18100644editdlrm
compat.py10760644editdlrm
compute.py228370644editdlrm
config.pxi26130644editdlrm
csv.py9620644editdlrm
cuda.py10870644editdlrm
dataset.py333330644editdlrm
error.pxi78070644editdlrm
feather.py92580644editdlrm
filesystem.py144680644editdlrm
flight.py17940644editdlrm
fs.py134440644editdlrm
gandiva.pyx184470644editdlrm
hdfs.py75270644editdlrm
io.pxi644950644editdlrm
ipc.pxi288210644editdlrm
ipc.py80290644editdlrm
json.py8580644editdlrm
jvm.py95930644editdlrm
lib.cpython-36m-x86_64-linux-gnu.so37605280755editdlrm
lib.pxd144420644editdlrm
lib.pyx43730644editdlrm
libarrow.so.600481626000755editdlrm
libarrow_dataset.so.60025411200755editdlrm
libarrow_flight.so.600129997840755editdlrm
libarrow_python.so.60018489200755editdlrm
libarrow_python_flight.so.6001127280755editdlrm
libparquet.so.60044585520755editdlrm
libplasma.so.6002512960755editdlrm
lib_api.h191530644editdlrm
memory.pxi74510644editdlrm
orc.py52690644editdlrm
pandas-shim.pxi79870644editdlrm
pandas_compat.py422430644editdlrm
parquet.py868440644editdlrm
plasma-store-server4827760755editdlrm
plasma.py60750644editdlrm
public-api.pxi128140644editdlrm
scalar.pxi291820644editdlrm
serialization.pxi190860644editdlrm
serialization.py182020644editdlrm
table.pxi722770644editdlrm
tensor.pxi343110644editdlrm
types.pxi794320644editdlrm
types.py103810644editdlrm
util.py50010644editdlrm
_compute.cpython-36m-x86_64-linux-gnu.so7173120755editdlrm
_compute.pxd11490644editdlrm
_compute.pyx417590644editdlrm
_csv.cpython-36m-x86_64-linux-gnu.so3121680755editdlrm
_csv.pxd16020644editdlrm
_csv.pyx392970644editdlrm
_cuda.pxd19220644editdlrm
_cuda.pyx347310644editdlrm
_dataset.cpython-36m-x86_64-linux-gnu.so10801680755editdlrm
_dataset.pxd16440644editdlrm
_dataset.pyx1200540644editdlrm
_dataset_orc.cpython-36m-x86_64-linux-gnu.so525360755editdlrm
_dataset_orc.pyx13450644editdlrm
_feather.cpython-36m-x86_64-linux-gnu.so942800755editdlrm
_feather.pyx36230644editdlrm
_flight.cpython-36m-x86_64-linux-gnu.so11246640755editdlrm
_flight.pyx935320644editdlrm
_fs.cpython-36m-x86_64-linux-gnu.so4699920755editdlrm
_fs.pxd24840644editdlrm
_fs.pyx400170644editdlrm
_generated_version.py1420644editdlrm
_hdfs.cpython-36m-x86_64-linux-gnu.so1273520755editdlrm
_hdfs.pyx54710644editdlrm
_hdfsio.cpython-36m-x86_64-linux-gnu.so2080960755editdlrm
_hdfsio.pyx136810644editdlrm
_json.cpython-36m-x86_64-linux-gnu.so906160755editdlrm
_json.pyx84060644editdlrm
_orc.cpython-36m-x86_64-linux-gnu.so1097760755editdlrm
_orc.pxd23500644editdlrm
_orc.pyx51510644editdlrm
_parquet.cpython-36m-x86_64-linux-gnu.so5077920755editdlrm
_parquet.pxd220840644editdlrm
_parquet.pyx479970644editdlrm
_plasma.cpython-36m-x86_64-linux-gnu.so2591680755editdlrm
_plasma.pyx294950644editdlrm
_s3fs.cpython-36m-x86_64-linux-gnu.so1994960755editdlrm
_s3fs.pyx116620644editdlrm
__init__.pxd21950644editdlrm
__init__.py212630644editdlrm
Edit: /usr/local/lib64/python3.6/site-packages/pyarrow/_json.pyx (8406B)
# Licensed to the Apache Software Foundation (ASF) under one # or more contributor license agreements. See the NOTICE file # distributed with this work for additional information # regarding copyright ownership. The ASF licenses this file # to you under the Apache License, Version 2.0 (the # "License"); you may not use this file except in compliance # with the License. You may obtain a copy of the License at # # http://www.apache.org/licenses/LICENSE-2.0 # # Unless required by applicable law or agreed to in writing, # software distributed under the License is distributed on an # "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY # KIND, either express or implied. See the License for the # specific language governing permissions and limitations # under the License. # cython: profile=False # distutils: language = c++ # cython: language_level = 3 from pyarrow.includes.common cimport * from pyarrow.includes.libarrow cimport * from pyarrow.lib cimport (check_status, _Weakrefable, Field, MemoryPool, ensure_type, maybe_unbox_memory_pool, get_input_stream, pyarrow_wrap_table, pyarrow_wrap_data_type, pyarrow_unwrap_data_type, pyarrow_wrap_schema, pyarrow_unwrap_schema) cdef class ReadOptions(_Weakrefable): """ Options for reading JSON files. Parameters ---------- use_threads : bool, optional (default True) Whether to use multiple threads to accelerate reading block_size : int, optional How much bytes to process at a time from the input stream. This will determine multi-threading granularity as well as the size of individual chunks in the Table. """ cdef: CJSONReadOptions options # Avoid mistakingly creating attributes __slots__ = () def __init__(self, use_threads=None, block_size=None): self.options = CJSONReadOptions.Defaults() if use_threads is not None: self.use_threads = use_threads if block_size is not None: self.block_size = block_size @property def use_threads(self): """ Whether to use multiple threads to accelerate reading. """ return self.options.use_threads @use_threads.setter def use_threads(self, value): self.options.use_threads = value @property def block_size(self): """ How much bytes to process at a time from the input stream. This will determine multi-threading granularity as well as the size of individual chunks in the Table. """ return self.options.block_size @block_size.setter def block_size(self, value): self.options.block_size = value cdef class ParseOptions(_Weakrefable): """ Options for parsing JSON files. Parameters ---------- explicit_schema : Schema, optional (default None) Optional explicit schema (no type inference, ignores other fields). newlines_in_values : bool, optional (default False) Whether objects may be printed across multiple lines (for example pretty printed). If false, input must end with an empty line. unexpected_field_behavior : str, default "infer" How JSON fields outside of explicit_schema (if given) are treated. Possible behaviors: - "ignore": unexpected JSON fields are ignored - "error": error out on unexpected JSON fields - "infer": unexpected JSON fields are type-inferred and included in the output """ cdef: CJSONParseOptions options __slots__ = () def __init__(self, explicit_schema=None, newlines_in_values=None, unexpected_field_behavior=None): self.options = CJSONParseOptions.Defaults() if explicit_schema is not None: self.explicit_schema = explicit_schema if newlines_in_values is not None: self.newlines_in_values = newlines_in_values if unexpected_field_behavior is not None: self.unexpected_field_behavior = unexpected_field_behavior @property def explicit_schema(self): """ Optional explicit schema (no type inference, ignores other fields) """ if self.options.explicit_schema.get() == NULL: return None else: return pyarrow_wrap_schema(self.options.explicit_schema) @explicit_schema.setter def explicit_schema(self, value): self.options.explicit_schema = pyarrow_unwrap_schema(value) @property def newlines_in_values(self): """ Whether newline characters are allowed in JSON values. Setting this to True reduces the performance of multi-threaded JSON reading. """ return self.options.newlines_in_values @newlines_in_values.setter def newlines_in_values(self, value): self.options.newlines_in_values = value @property def unexpected_field_behavior(self): """ How JSON fields outside of explicit_schema (if given) are treated. Possible behaviors: - "ignore": unexpected JSON fields are ignored - "error": error out on unexpected JSON fields - "infer": unexpected JSON fields are type-inferred and included in the output Set to "infer" by default. """ v = self.options.unexpected_field_behavior if v == CUnexpectedFieldBehavior_Ignore: return "ignore" elif v == CUnexpectedFieldBehavior_Error: return "error" elif v == CUnexpectedFieldBehavior_InferType: return "infer" else: raise ValueError('Unexpected value for unexpected_field_behavior') @unexpected_field_behavior.setter def unexpected_field_behavior(self, value): cdef CUnexpectedFieldBehavior v if value == "ignore": v = CUnexpectedFieldBehavior_Ignore elif value == "error": v = CUnexpectedFieldBehavior_Error elif value == "infer": v = CUnexpectedFieldBehavior_InferType else: raise ValueError( "Unexpected value `{}` for `unexpected_field_behavior`, pass " "either `ignore`, `error` or `infer`.".format(value) ) self.options.unexpected_field_behavior = v cdef _get_reader(input_file, shared_ptr[CInputStream]* out): use_memory_map = False get_input_stream(input_file, use_memory_map, out) cdef _get_read_options(ReadOptions read_options, CJSONReadOptions* out): if read_options is None: out[0] = CJSONReadOptions.Defaults() else: out[0] = read_options.options cdef _get_parse_options(ParseOptions parse_options, CJSONParseOptions* out): if parse_options is None: out[0] = CJSONParseOptions.Defaults() else: out[0] = parse_options.options def read_json(input_file, read_options=None, parse_options=None, MemoryPool memory_pool=None): """ Read a Table from a stream of JSON data. Parameters ---------- input_file : str, path or file-like object The location of JSON data. Currently only the line-delimited JSON format is supported. read_options : pyarrow.json.ReadOptions, optional Options for the JSON reader (see ReadOptions constructor for defaults). parse_options : pyarrow.json.ParseOptions, optional Options for the JSON parser (see ParseOptions constructor for defaults). memory_pool : MemoryPool, optional Pool to allocate Table memory from. Returns ------- :class:`pyarrow.Table` Contents of the JSON file as a in-memory table. """ cdef: shared_ptr[CInputStream] stream CJSONReadOptions c_read_options CJSONParseOptions c_parse_options shared_ptr[CJSONReader] reader shared_ptr[CTable] table _get_reader(input_file, &stream) _get_read_options(read_options, &c_read_options) _get_parse_options(parse_options, &c_parse_options) reader = GetResultValue( CJSONReader.Make(maybe_unbox_memory_pool(memory_pool), stream, c_read_options, c_parse_options)) with nogil: table = GetResultValue(reader.get().Read()) return pyarrow_wrap_table(table)