Python pandas.compat.string_types() Examples
The following are 30
code examples of pandas.compat.string_types().
You can vote up the ones you like or vote down the ones you don't like,
and go to the original project or source file by following the links above each example.
You may also want to check out all available functions/classes of the module
pandas.compat
, or try the search function
.
Example #1
Source File: pytables.py From recruit with Apache License 2.0 | 6 votes |
def _validate_where(w): """ Validate that the where statement is of the right type. The type may either be String, Expr, or list-like of Exprs. Parameters ---------- w : String term expression, Expr, or list-like of Exprs. Returns ------- where : The original where clause if the check was successful. Raises ------ TypeError : An invalid data type was passed in for w (e.g. dict). """ if not (isinstance(w, (Expr, string_types)) or is_list_like(w)): raise TypeError("where must be passed as a string, Expr, " "or list-like of Exprs") return w
Example #2
Source File: window.py From recruit with Apache License 2.0 | 6 votes |
def validate(self): super(Window, self).validate() window = self.window if isinstance(window, (list, tuple, np.ndarray)): pass elif is_integer(window): if window <= 0: raise ValueError("window must be > 0 ") try: import scipy.signal as sig except ImportError: raise ImportError('Please install scipy to generate window ' 'weight') if not isinstance(self.win_type, compat.string_types): raise ValueError('Invalid win_type {0}'.format(self.win_type)) if getattr(sig, self.win_type, None) is None: raise ValueError('Invalid win_type {0}'.format(self.win_type)) else: raise ValueError('Invalid window {0}'.format(window))
Example #3
Source File: ops.py From recruit with Apache License 2.0 | 6 votes |
def update(self, value): """ search order for local (i.e., @variable) variables: scope, key_variable [('locals', 'local_name'), ('globals', 'local_name'), ('locals', 'key'), ('globals', 'key')] """ key = self.name # if it's a variable name (otherwise a constant) if isinstance(key, string_types): self.env.swapkey(self.local_name, key, new_value=value) self.value = value
Example #4
Source File: window.py From recruit with Apache License 2.0 | 6 votes |
def _apply(self, func, name, window=None, center=None, check_minp=None, **kwargs): """ Dispatch to apply; we are stripping all of the _apply kwargs and performing the original function call on the grouped object. """ def f(x, name=name, *args): x = self._shallow_copy(x) if isinstance(name, compat.string_types): return getattr(x, name)(*args, **kwargs) return x.apply(name, *args, **kwargs) return self._groupby.apply(f)
Example #5
Source File: test_to_html.py From recruit with Apache License 2.0 | 6 votes |
def test_to_html(biggie_df_fixture): # TODO: split this test df = biggie_df_fixture s = df.to_html() buf = StringIO() retval = df.to_html(buf=buf) assert retval is None assert buf.getvalue() == s assert isinstance(s, compat.string_types) df.to_html(columns=['B', 'A'], col_space=17) df.to_html(columns=['B', 'A'], formatters={'A': lambda x: '{x:.1f}'.format(x=x)}) df.to_html(columns=['B', 'A'], float_format=str) df.to_html(columns=['B', 'A'], col_space=12, float_format=str)
Example #6
Source File: generic.py From recruit with Apache License 2.0 | 6 votes |
def aggregate(self, arg, *args, **kwargs): """ Aggregate using input function or dict of {column -> function} Parameters ---------- arg : function or dict Function to use for aggregating groups. If a function, must either work when passed a Panel or when passed to Panel.apply. If pass a dict, the keys must be DataFrame column names Returns ------- aggregated : Panel """ if isinstance(arg, compat.string_types): return getattr(self, arg)(*args, **kwargs) return self._aggregate_generic(arg, *args, **kwargs)
Example #7
Source File: test_stata.py From recruit with Apache License 2.0 | 6 votes |
def test_encoding(self, version): # GH 4626, proper encoding handling raw = read_stata(self.dta_encoding) with tm.assert_produces_warning(FutureWarning): encoded = read_stata(self.dta_encoding, encoding='latin-1') result = encoded.kreis1849[0] expected = raw.kreis1849[0] assert result == expected assert isinstance(result, compat.string_types) with tm.ensure_clean() as path: with tm.assert_produces_warning(FutureWarning): encoded.to_stata(path, write_index=False, version=version, encoding='latin-1') reread_encoded = read_stata(path) tm.assert_frame_equal(encoded, reread_encoded)
Example #8
Source File: indexing.py From recruit with Apache License 2.0 | 6 votes |
def _get_partial_string_timestamp_match_key(self, key, labels): """Translate any partial string timestamp matches in key, returning the new key (GH 10331)""" if isinstance(labels, MultiIndex): if (isinstance(key, compat.string_types) and labels.levels[0].is_all_dates): # Convert key '2016-01-01' to # ('2016-01-01'[, slice(None, None, None)]+) key = tuple([key] + [slice(None)] * (len(labels.levels) - 1)) if isinstance(key, tuple): # Convert (..., '2016-01-01', ...) in tuple to # (..., slice('2016-01-01', '2016-01-01', None), ...) new_key = [] for i, component in enumerate(key): if (isinstance(component, compat.string_types) and labels.levels[i].is_all_dates): new_key.append(slice(component, component, None)) else: new_key.append(component) key = tuple(new_key) return key
Example #9
Source File: common.py From recruit with Apache License 2.0 | 6 votes |
def asarray_tuplesafe(values, dtype=None): if not (isinstance(values, (list, tuple)) or hasattr(values, '__array__')): values = list(values) elif isinstance(values, ABCIndexClass): return values.values if isinstance(values, list) and dtype in [np.object_, object]: return construct_1d_object_array_from_listlike(values) result = np.asarray(values, dtype=dtype) if issubclass(result.dtype.type, compat.string_types): result = np.asarray(values, dtype=object) if result.ndim == 2: # Avoid building an array of arrays: # TODO: verify whether any path hits this except #18819 (invalid) values = [tuple(x) for x in values] result = construct_1d_object_array_from_listlike(values) return result
Example #10
Source File: test_strings.py From recruit with Apache License 2.0 | 6 votes |
def test_iter(self): # GH3638 strs = 'google', 'wikimedia', 'wikipedia', 'wikitravel' ds = Series(strs) for s in ds.str: # iter must yield a Series assert isinstance(s, Series) # indices of each yielded Series should be equal to the index of # the original Series tm.assert_index_equal(s.index, ds.index) for el in s: # each element of the series is either a basestring/str or nan assert isinstance(el, compat.string_types) or isna(el) # desired behavior is to iterate until everything would be nan on the # next iter so make sure the last element of the iterator was 'l' in # this case since 'wikitravel' is the longest string assert s.dropna().values.item() == 'l'
Example #11
Source File: common.py From recruit with Apache License 2.0 | 6 votes |
def index_labels_to_array(labels, dtype=None): """ Transform label or iterable of labels to array, for use in Index. Parameters ---------- dtype : dtype If specified, use as dtype of the resulting array, otherwise infer. Returns ------- array """ if isinstance(labels, (compat.string_types, tuple)): labels = [labels] if not isinstance(labels, (list, np.ndarray)): try: labels = list(labels) except TypeError: # non-iterable labels = [labels] labels = asarray_tuplesafe(labels, dtype=dtype) return labels
Example #12
Source File: indexing.py From recruit with Apache License 2.0 | 6 votes |
def convert_to_index_sliceable(obj, key): """ if we are index sliceable, then return my slicer, otherwise return None """ idx = obj.index if isinstance(key, slice): return idx._convert_slice_indexer(key, kind='getitem') elif isinstance(key, compat.string_types): # we are an actual column if obj._data.items.contains(key): return None # We might have a datetimelike string that we can translate to a # slice here via partial string indexing if idx.is_all_dates: try: return idx._get_string_slice(key) except (KeyError, ValueError, NotImplementedError): return None return None
Example #13
Source File: offsets.py From recruit with Apache License 2.0 | 6 votes |
def __eq__(self, other): if isinstance(other, compat.string_types): from pandas.tseries.frequencies import to_offset try: # GH#23524 if to_offset fails, we are dealing with an # incomparable type so == is False and != is True other = to_offset(other) except ValueError: # e.g. "infer" return False if isinstance(other, Tick): return self.delta == other.delta else: return False # This is identical to DateOffset.__hash__, but has to be redefined here # for Python 3, because we've redefined __eq__.
Example #14
Source File: period.py From recruit with Apache License 2.0 | 6 votes |
def searchsorted(self, value, side='left', sorter=None): if isinstance(value, Period): if value.freq != self.freq: msg = DIFFERENT_FREQ.format(cls=type(self).__name__, own_freq=self.freqstr, other_freq=value.freqstr) raise IncompatibleFrequency(msg) value = value.ordinal elif isinstance(value, compat.string_types): try: value = Period(value, freq=self.freq).ordinal except DateParseError: raise KeyError("Cannot interpret '{}' as period".format(value)) return self._ndarray_values.searchsorted(value, side=side, sorter=sorter)
Example #15
Source File: _converter.py From recruit with Apache License 2.0 | 6 votes |
def get_finder(freq): if isinstance(freq, compat.string_types): freq = get_freq(freq) fgroup = resolution.get_freq_group(freq) if fgroup == FreqGroup.FR_ANN: return _annual_finder elif fgroup == FreqGroup.FR_QTR: return _quarterly_finder elif freq == FreqGroup.FR_MTH: return _monthly_finder elif ((freq >= FreqGroup.FR_BUS) or fgroup == FreqGroup.FR_WK): return _daily_finder else: # pragma: no cover errmsg = "Unsupported frequency: {freq}".format(freq=freq) raise NotImplementedError(errmsg)
Example #16
Source File: dtypes.py From recruit with Apache License 2.0 | 6 votes |
def is_dtype(cls, dtype): """ Return a boolean if we if the passed type is an actual dtype that we can match (via string or type) """ if isinstance(dtype, compat.string_types): # PeriodDtype can be instantiated from freq string like "U", # but doesn't regard freq str like "U" as dtype. if dtype.startswith('period[') or dtype.startswith('Period['): try: if cls._parse_dtype_strict(dtype) is not None: return True else: return False except ValueError: return False else: return False return super(PeriodDtype, cls).is_dtype(dtype)
Example #17
Source File: _converter.py From recruit with Apache License 2.0 | 6 votes |
def _convert_1d(values, units, axis): if not hasattr(axis, 'freq'): raise TypeError('Axis must have `freq` set to convert to Periods') valid_types = (compat.string_types, datetime, Period, pydt.date, pydt.time, np.datetime64) if (isinstance(values, valid_types) or is_integer(values) or is_float(values)): return get_datevalue(values, axis.freq) elif isinstance(values, PeriodIndex): return values.asfreq(axis.freq)._ndarray_values elif isinstance(values, Index): return values.map(lambda x: get_datevalue(x, axis.freq)) elif lib.infer_dtype(values, skipna=False) == 'period': # https://github.com/pandas-dev/pandas/issues/24304 # convert ndarray[period] -> PeriodIndex return PeriodIndex(values, freq=axis.freq)._ndarray_values elif isinstance(values, (list, tuple, np.ndarray, Index)): return [get_datevalue(x, axis.freq) for x in values] return values
Example #18
Source File: dtypes.py From recruit with Apache License 2.0 | 6 votes |
def construct_from_string(cls, string): """ attempt to construct this type from a string, raise a TypeError if its not possible """ if not isinstance(string, compat.string_types): msg = "a string needs to be passed, got type {typ}" raise TypeError(msg.format(typ=type(string))) if (string.lower() == 'interval' or cls._match.search(string) is not None): return cls(string) msg = ('Incorrectly formatted string passed to constructor. ' 'Valid formats include Interval or Interval[dtype] ' 'where dtype is numeric, datetime, or timedelta') raise TypeError(msg)
Example #19
Source File: dtypes.py From recruit with Apache License 2.0 | 5 votes |
def __eq__(self, other): if isinstance(other, compat.string_types): return other == self.name return (isinstance(other, DatetimeTZDtype) and self.unit == other.unit and str(self.tz) == str(other.tz))
Example #20
Source File: dtypes.py From recruit with Apache License 2.0 | 5 votes |
def update_dtype(self, dtype): """ Returns a CategoricalDtype with categories and ordered taken from dtype if specified, otherwise falling back to self if unspecified Parameters ---------- dtype : CategoricalDtype Returns ------- new_dtype : CategoricalDtype """ if isinstance(dtype, compat.string_types) and dtype == 'category': # dtype='category' should not change anything return self elif not self.is_dtype(dtype): msg = ('a CategoricalDtype must be passed to perform an update, ' 'got {dtype!r}').format(dtype=dtype) raise ValueError(msg) elif dtype.categories is not None and dtype.ordered is self.ordered: return dtype # dtype is CDT: keep current categories/ordered if None new_categories = dtype.categories if new_categories is None: new_categories = self.categories new_ordered = dtype.ordered if new_ordered is None: new_ordered = self.ordered return CategoricalDtype(new_categories, new_ordered)
Example #21
Source File: dtypes.py From recruit with Apache License 2.0 | 5 votes |
def construct_from_string(cls, string): """ Construct a DatetimeTZDtype from a string. Parameters ---------- string : str The string alias for this DatetimeTZDtype. Should be formatted like ``datetime64[ns, <tz>]``, where ``<tz>`` is the timezone name. Examples -------- >>> DatetimeTZDtype.construct_from_string('datetime64[ns, UTC]') datetime64[ns, UTC] """ if isinstance(string, compat.string_types): msg = "Could not construct DatetimeTZDtype from '{}'" try: match = cls._match.match(string) if match: d = match.groupdict() return cls(unit=d['unit'], tz=d['tz']) except Exception: # TODO(py3): Change this pass to `raise TypeError(msg) from e` pass raise TypeError(msg.format(string)) raise TypeError("Could not construct DatetimeTZDtype")
Example #22
Source File: multi.py From recruit with Apache License 2.0 | 5 votes |
def _hashed_indexing_key(self, key): """ validate and return the hash for the provided key *this is internal for use for the cython routines* Parameters ---------- key : string or tuple Returns ------- np.uint64 Notes ----- we need to stringify if we have mixed levels """ from pandas.core.util.hashing import hash_tuples, hash_tuple if not isinstance(key, tuple): return hash_tuples(key) if not len(key) == self.nlevels: raise KeyError def f(k, stringify): if stringify and not isinstance(k, compat.string_types): k = str(k) return k key = tuple(f(k, stringify) for k, stringify in zip(key, self._have_mixed_levels)) return hash_tuple(key)
Example #23
Source File: base.py From recruit with Apache License 2.0 | 5 votes |
def _try_aggregate_string_function(self, arg, *args, **kwargs): """ if arg is a string, then try to operate on it: - try to find a function (or attribute) on ourselves - try to find a numpy function - raise """ assert isinstance(arg, compat.string_types) f = getattr(self, arg, None) if f is not None: if callable(f): return f(*args, **kwargs) # people may try to aggregate on a non-callable attribute # but don't let them think they can pass args to it assert len(args) == 0 assert len([kwarg for kwarg in kwargs if kwarg not in ['axis', '_level']]) == 0 return f f = getattr(np, arg, None) if f is not None: return f(self, *args, **kwargs) raise ValueError("{arg} is an unknown string function".format(arg=arg))
Example #24
Source File: ops.py From recruit with Apache License 2.0 | 5 votes |
def __new__(cls, name, env, side=None, encoding=None): klass = Constant if not isinstance(name, string_types) else cls supr_new = super(Term, klass).__new__ return supr_new(klass)
Example #25
Source File: expr.py From recruit with Apache License 2.0 | 5 votes |
def visit(self, node, **kwargs): if isinstance(node, string_types): clean = self.preparser(node) try: node = ast.fix_missing_locations(ast.parse(clean)) except SyntaxError as e: from keyword import iskeyword if any(iskeyword(x) for x in clean.split()): e.msg = ("Python keyword not valid identifier" " in numexpr query") raise e method = 'visit_' + node.__class__.__name__ visitor = getattr(self, method) return visitor(node, **kwargs)
Example #26
Source File: pytables.py From recruit with Apache License 2.0 | 5 votes |
def maybe_expression(s): """ loose checking if s is a pytables-acceptable expression """ if not isinstance(s, string_types): return False ops = ExprVisitor.binary_ops + ExprVisitor.unary_ops + ('=',) # make sure we have an op at least return any(op in s for op in ops)
Example #27
Source File: pytables.py From recruit with Apache License 2.0 | 5 votes |
def __new__(cls, name, env, side=None, encoding=None): klass = Constant if not isinstance(name, string_types) else cls supr_new = StringMixin.__new__ return supr_new(klass)
Example #28
Source File: merge.py From recruit with Apache License 2.0 | 5 votes |
def _should_fill(lname, rname): if (not isinstance(lname, compat.string_types) or not isinstance(rname, compat.string_types)): return True return lname == rname
Example #29
Source File: period.py From recruit with Apache License 2.0 | 5 votes |
def _maybe_cast_slice_bound(self, label, side, kind): """ If label is a string or a datetime, cast it to Period.ordinal according to resolution. Parameters ---------- label : object side : {'left', 'right'} kind : {'ix', 'loc', 'getitem'} Returns ------- bound : Period or object Notes ----- Value of `side` parameter should be validated in caller. """ assert kind in ['ix', 'loc', 'getitem'] if isinstance(label, datetime): return Period(label, freq=self.freq) elif isinstance(label, compat.string_types): try: _, parsed, reso = parse_time_string(label, self.freq) bounds = self._parsed_string_to_bounds(reso, parsed) return bounds[0 if side == 'left' else 1] except Exception: raise KeyError(label) elif is_integer(label) or is_float(label): self._invalid_indexer('slice', label) return label
Example #30
Source File: base.py From recruit with Apache License 2.0 | 5 votes |
def _summary(self, name=None): """ Return a summarized representation. Parameters ---------- name : str name to use in the summary representation Returns ------- String with a summarized representation of the index """ if len(self) > 0: head = self[0] if (hasattr(head, 'format') and not isinstance(head, compat.string_types)): head = head.format() tail = self[-1] if (hasattr(tail, 'format') and not isinstance(tail, compat.string_types)): tail = tail.format() index_summary = ', %s to %s' % (pprint_thing(head), pprint_thing(tail)) else: index_summary = '' if name is None: name = type(self).__name__ return '%s: %s entries%s' % (name, len(self), index_summary)