Python pandas.core.api.Series() Examples
The following are 30
code examples of pandas.core.api.Series().
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.core.api
, or try the search function
.
Example #1
Source File: moments.py From elasticintel with GNU General Public License v3.0 | 6 votes |
def expanding_count(arg, freq=None): """ Expanding count of number of non-NaN observations. Parameters ---------- arg : DataFrame or numpy ndarray-like freq : string or DateOffset object, optional (default None) Frequency to conform the data to before computing the statistic. Specified as a frequency string or DateOffset object. Returns ------- expanding_count : type of caller Notes ----- The `freq` keyword is used to conform time series data to a specified frequency by resampling the data. This is done with the default parameters of :meth:`~pandas.Series.resample` (i.e. using the `mean`). To learn more about the frequency strings, please see `this link <http://pandas.pydata.org/pandas-docs/stable/timeseries.html#offset-aliases>`__. """ return ensure_compat('expanding', 'count', arg, freq=freq)
Example #2
Source File: resample.py From Computable with MIT License | 6 votes |
def asfreq(obj, freq, method=None, how=None, normalize=False): """ Utility frequency conversion method for Series/DataFrame """ if isinstance(obj.index, PeriodIndex): if method is not None: raise NotImplementedError if how is None: how = 'E' new_index = obj.index.asfreq(freq, how=how) new_obj = obj.copy() new_obj.index = new_index return new_obj else: if len(obj.index) == 0: return obj.copy() dti = date_range(obj.index[0], obj.index[-1], freq=freq) rs = obj.reindex(dti, method=method) if normalize: rs.index = rs.index.normalize() return rs
Example #3
Source File: moments.py From Splunking-Crime with GNU Affero General Public License v3.0 | 6 votes |
def expanding_count(arg, freq=None): """ Expanding count of number of non-NaN observations. Parameters ---------- arg : DataFrame or numpy ndarray-like freq : string or DateOffset object, optional (default None) Frequency to conform the data to before computing the statistic. Specified as a frequency string or DateOffset object. Returns ------- expanding_count : type of caller Notes ----- The `freq` keyword is used to conform time series data to a specified frequency by resampling the data. This is done with the default parameters of :meth:`~pandas.Series.resample` (i.e. using the `mean`). To learn more about the frequency strings, please see `this link <http://pandas.pydata.org/pandas-docs/stable/timeseries.html#offset-aliases>`__. """ return ensure_compat('expanding', 'count', arg, freq=freq)
Example #4
Source File: moments.py From Computable with MIT License | 6 votes |
def _center_window(rs, window, axis): if axis > rs.ndim-1: raise ValueError("Requested axis is larger then no. of argument dimensions") offset = int((window - 1) / 2.) if isinstance(rs, (Series, DataFrame, Panel)): rs = rs.shift(-offset, axis=axis) else: rs_indexer = [slice(None)] * rs.ndim rs_indexer[axis] = slice(None, -offset) lead_indexer = [slice(None)] * rs.ndim lead_indexer[axis] = slice(offset, None) na_indexer = [slice(None)] * rs.ndim na_indexer[axis] = slice(-offset, None) rs[tuple(rs_indexer)] = np.copy(rs[tuple(lead_indexer)]) rs[tuple(na_indexer)] = np.nan return rs
Example #5
Source File: moments.py From Computable with MIT License | 6 votes |
def _process_data_structure(arg, kill_inf=True): if isinstance(arg, DataFrame): return_hook = lambda v: type(arg)(v, index=arg.index, columns=arg.columns) values = arg.values elif isinstance(arg, Series): values = arg.values return_hook = lambda v: Series(v, arg.index) else: return_hook = lambda v: v values = arg if not issubclass(values.dtype.type, float): values = values.astype(float) if kill_inf: values = values.copy() values[np.isinf(values)] = np.NaN return return_hook, values #------------------------------------------------------------------------------ # Exponential moving moments
Example #6
Source File: moments.py From Computable with MIT License | 6 votes |
def expanding_apply(arg, func, min_periods=1, freq=None, center=False, time_rule=None): """Generic expanding function application Parameters ---------- arg : Series, DataFrame func : function Must produce a single value from an ndarray input min_periods : int Minimum number of observations in window required to have a value freq : None or string alias / date offset object, default=None Frequency to conform to before computing statistic center : boolean, default False Whether the label should correspond with center of window time_rule : Legacy alias for freq Returns ------- y : type of input argument """ window = len(arg) return rolling_apply(arg, window, func, min_periods=min_periods, freq=freq, center=center, time_rule=time_rule)
Example #7
Source File: ols.py From Computable with MIT License | 5 votes |
def _combine_rhs(rhs): """ Glue input X variables together while checking for potential duplicates """ series = {} if isinstance(rhs, Series): series['x'] = rhs elif isinstance(rhs, DataFrame): series = rhs.copy() elif isinstance(rhs, dict): for name, value in compat.iteritems(rhs): if isinstance(value, Series): _safe_update(series, {name: value}) elif isinstance(value, (dict, DataFrame)): _safe_update(series, value) else: # pragma: no cover raise Exception('Invalid RHS data type: %s' % type(value)) else: # pragma: no cover raise Exception('Invalid RHS type: %s' % type(rhs)) if not isinstance(series, DataFrame): series = DataFrame(series, dtype=float) return series # A little kludge so we can use this method for both # MovingOLS and MovingPanelOLS
Example #8
Source File: misc.py From Computable with MIT License | 5 votes |
def bucketcat(series, cats): """ Produce DataFrame representing quantiles of a Series Parameters ---------- series : Series cat : Series or same-length array bucket by category; mutually exclusive with 'by' Returns ------- DataFrame """ if not isinstance(series, Series): series = Series(series, index=np.arange(len(series))) cats = np.asarray(cats) unique_labels = np.unique(cats) unique_labels = unique_labels[com.notnull(unique_labels)] # group by data = {} for label in unique_labels: data[label] = series[cats == label] return DataFrame(data, columns=unique_labels)
Example #9
Source File: misc.py From Computable with MIT License | 5 votes |
def correl_ts(frame1, frame2): """ Pairwise correlation of columns of two DataFrame objects Parameters ---------- Returns ------- y : Series """ results = {} for col, series in compat.iteritems(frame1): if col in frame2: other = frame2[col] idx1 = series.valid().index idx2 = other.valid().index common_index = idx1.intersection(idx2) seriesStand = zscore(series.reindex(common_index)) otherStand = zscore(other.reindex(common_index)) results[col] = (seriesStand * otherStand).mean() return Series(results)
Example #10
Source File: misc.py From Computable with MIT License | 5 votes |
def bucketpanel(series, bins=None, by=None, cat=None): """ Bucket data by two Series to create summary panel Parameters ---------- series : Series bins : tuple (length-2) e.g. (2, 2) by : tuple of Series bucket by value cat : tuple of Series bucket by category; mutually exclusive with 'by' Returns ------- DataFrame """ use_by = by is not None use_cat = cat is not None if use_by and use_cat: raise Exception('must specify by or cat, but not both') elif use_by: if len(by) != 2: raise Exception('must provide two bucketing series') xby, yby = by xbins, ybins = bins return _bucketpanel_by(series, xby, yby, xbins, ybins) elif use_cat: xcat, ycat = cat return _bucketpanel_cat(series, xcat, ycat) else: raise Exception('must specify either values or categories ' 'to bucket by')
Example #11
Source File: test_math.py From Computable with MIT License | 5 votes |
def setUp(self): arr = randn(N) arr[self._nan_locs] = np.NaN self.arr = arr self.rng = date_range(datetime(2009, 1, 1), periods=N) self.series = Series(arr.copy(), index=self.rng) self.frame = DataFrame(randn(N, K), index=self.rng, columns=np.arange(K))
Example #12
Source File: test_math.py From Computable with MIT License | 5 votes |
def test_rank_1d(self): self.assertEqual(1, pmath.rank(self.series)) self.assertEqual(0, pmath.rank(Series(0, self.series.index)))
Example #13
Source File: test_math.py From Computable with MIT License | 5 votes |
def test_solve_rect(self): if not _have_statsmodels: raise nose.SkipTest("no statsmodels") b = Series(np.random.randn(N), self.frame.index) result = pmath.solve(self.frame, b) expected = ols(y=b, x=self.frame, intercept=False).beta self.assert_(np.allclose(result, expected))
Example #14
Source File: moments.py From Computable with MIT License | 5 votes |
def _conv_timerule(arg, freq, time_rule): if time_rule is not None: import warnings warnings.warn("time_rule argument is deprecated, replace with freq", FutureWarning) freq = time_rule types = (DataFrame, Series) if freq is not None and isinstance(arg, types): # Conform to whatever frequency needed. arg = arg.resample(freq) return arg
Example #15
Source File: moments.py From Computable with MIT License | 5 votes |
def rolling_quantile(arg, window, quantile, min_periods=None, freq=None, center=False, time_rule=None): """Moving quantile Parameters ---------- arg : Series, DataFrame window : Number of observations used for calculating statistic quantile : 0 <= quantile <= 1 min_periods : int Minimum number of observations in window required to have a value freq : None or string alias / date offset object, default=None Frequency to conform to before computing statistic center : boolean, default False Whether the label should correspond with center of window time_rule : Legacy alias for freq Returns ------- y : type of input argument """ def call_cython(arg, window, minp): minp = _use_window(minp, window) return algos.roll_quantile(arg, window, minp, quantile) return _rolling_moment(arg, window, call_cython, min_periods, freq=freq, center=center, time_rule=time_rule)
Example #16
Source File: moments.py From Computable with MIT License | 5 votes |
def rolling_apply(arg, window, func, min_periods=None, freq=None, center=False, time_rule=None): """Generic moving function application Parameters ---------- arg : Series, DataFrame window : Number of observations used for calculating statistic func : function Must produce a single value from an ndarray input min_periods : int Minimum number of observations in window required to have a value freq : None or string alias / date offset object, default=None Frequency to conform to before computing statistic center : boolean, default False Whether the label should correspond with center of window time_rule : Legacy alias for freq Returns ------- y : type of input argument """ def call_cython(arg, window, minp): minp = _use_window(minp, window) return algos.roll_generic(arg, window, minp, func) return _rolling_moment(arg, window, call_cython, min_periods, freq=freq, center=center, time_rule=time_rule)
Example #17
Source File: fama_macbeth.py From Computable with MIT License | 5 votes |
def _make_result(self, result): return Series(result, index=self._cols)
Example #18
Source File: tile.py From Computable with MIT License | 5 votes |
def qcut(x, q, labels=None, retbins=False, precision=3): """ Quantile-based discretization function. Discretize variable into equal-sized buckets based on rank or based on sample quantiles. For example 1000 values for 10 quantiles would produce a Categorical object indicating quantile membership for each data point. Parameters ---------- x : ndarray or Series q : integer or array of quantiles Number of quantiles. 10 for deciles, 4 for quartiles, etc. Alternately array of quantiles, e.g. [0, .25, .5, .75, 1.] for quartiles labels : array or boolean, default None Labels to use for bin edges, or False to return integer bin labels retbins : bool, optional Whether to return the bins or not. Can be useful if bins is given as a scalar. Returns ------- cat : Categorical Notes ----- Out of bounds values will be NA in the resulting Categorical object Examples -------- """ if com.is_integer(q): quantiles = np.linspace(0, 1, q + 1) else: quantiles = q bins = algos.quantile(x, quantiles) return _bins_to_cuts(x, bins, labels=labels, retbins=retbins, precision=precision, include_lowest=True)
Example #19
Source File: moments.py From Splunking-Crime with GNU Affero General Public License v3.0 | 5 votes |
def rolling_count(arg, window, **kwargs): """ Rolling count of number of non-NaN observations inside provided window. Parameters ---------- arg : DataFrame or numpy ndarray-like window : int Size of the moving window. This is the number of observations used for calculating the statistic. freq : string or DateOffset object, optional (default None) Frequency to conform the data to before computing the statistic. Specified as a frequency string or DateOffset object. center : boolean, default False Whether the label should correspond with center of window how : string, default 'mean' Method for down- or re-sampling Returns ------- rolling_count : type of caller Notes ----- The `freq` keyword is used to conform time series data to a specified frequency by resampling the data. This is done with the default parameters of :meth:`~pandas.Series.resample` (i.e. using the `mean`). To learn more about the frequency strings, please see `this link <http://pandas.pydata.org/pandas-docs/stable/timeseries.html#offset-aliases>`__. """ return ensure_compat('rolling', 'count', arg, window=window, **kwargs)
Example #20
Source File: moments.py From Splunking-Crime with GNU Affero General Public License v3.0 | 5 votes |
def expanding_quantile(arg, quantile, min_periods=1, freq=None): """Expanding quantile. Parameters ---------- arg : Series, DataFrame quantile : float 0 <= quantile <= 1 min_periods : int, default None Minimum number of observations in window required to have a value (otherwise result is NA). freq : string or DateOffset object, optional (default None) Frequency to conform the data to before computing the statistic. Specified as a frequency string or DateOffset object. Returns ------- y : type of input argument Notes ----- The `freq` keyword is used to conform time series data to a specified frequency by resampling the data. This is done with the default parameters of :meth:`~pandas.Series.resample` (i.e. using the `mean`). To learn more about the frequency strings, please see `this link <http://pandas.pydata.org/pandas-docs/stable/timeseries.html#offset-aliases>`__. """ return ensure_compat('expanding', 'quantile', arg, freq=freq, min_periods=min_periods, func_kw=['quantile'], quantile=quantile)
Example #21
Source File: sql.py From Splunking-Crime with GNU Affero General Public License v3.0 | 5 votes |
def _get_notna_col_dtype(self, col): """ Infer datatype of the Series col. In case the dtype of col is 'object' and it contains NA values, this infers the datatype of the not-NA values. Needed for inserting typed data containing NULLs, GH8778. """ col_for_inference = col if col.dtype == 'object': notnadata = col[~isna(col)] if len(notnadata): col_for_inference = notnadata return lib.infer_dtype(col_for_inference)
Example #22
Source File: moments.py From elasticintel with GNU General Public License v3.0 | 5 votes |
def rolling_count(arg, window, **kwargs): """ Rolling count of number of non-NaN observations inside provided window. Parameters ---------- arg : DataFrame or numpy ndarray-like window : int Size of the moving window. This is the number of observations used for calculating the statistic. freq : string or DateOffset object, optional (default None) Frequency to conform the data to before computing the statistic. Specified as a frequency string or DateOffset object. center : boolean, default False Whether the label should correspond with center of window how : string, default 'mean' Method for down- or re-sampling Returns ------- rolling_count : type of caller Notes ----- The `freq` keyword is used to conform time series data to a specified frequency by resampling the data. This is done with the default parameters of :meth:`~pandas.Series.resample` (i.e. using the `mean`). To learn more about the frequency strings, please see `this link <http://pandas.pydata.org/pandas-docs/stable/timeseries.html#offset-aliases>`__. """ return ensure_compat('rolling', 'count', arg, window=window, **kwargs)
Example #23
Source File: moments.py From elasticintel with GNU General Public License v3.0 | 5 votes |
def expanding_quantile(arg, quantile, min_periods=1, freq=None): """Expanding quantile. Parameters ---------- arg : Series, DataFrame quantile : float 0 <= quantile <= 1 min_periods : int, default None Minimum number of observations in window required to have a value (otherwise result is NA). freq : string or DateOffset object, optional (default None) Frequency to conform the data to before computing the statistic. Specified as a frequency string or DateOffset object. Returns ------- y : type of input argument Notes ----- The `freq` keyword is used to conform time series data to a specified frequency by resampling the data. This is done with the default parameters of :meth:`~pandas.Series.resample` (i.e. using the `mean`). To learn more about the frequency strings, please see `this link <http://pandas.pydata.org/pandas-docs/stable/timeseries.html#offset-aliases>`__. """ return ensure_compat('expanding', 'quantile', arg, freq=freq, min_periods=min_periods, func_kw=['quantile'], quantile=quantile)
Example #24
Source File: sql.py From elasticintel with GNU General Public License v3.0 | 5 votes |
def _get_notna_col_dtype(self, col): """ Infer datatype of the Series col. In case the dtype of col is 'object' and it contains NA values, this infers the datatype of the not-NA values. Needed for inserting typed data containing NULLs, GH8778. """ col_for_inference = col if col.dtype == 'object': notnadata = col[~isna(col)] if len(notnadata): col_for_inference = notnadata return lib.infer_dtype(col_for_inference)
Example #25
Source File: ols.py From Computable with MIT License | 5 votes |
def nobs(self): return Series(self._nobs, index=self._result_index)
Example #26
Source File: sql.py From vnpy_crypto with MIT License | 5 votes |
def _get_notna_col_dtype(self, col): """ Infer datatype of the Series col. In case the dtype of col is 'object' and it contains NA values, this infers the datatype of the not-NA values. Needed for inserting typed data containing NULLs, GH8778. """ col_for_inference = col if col.dtype == 'object': notnadata = col[~isna(col)] if len(notnadata): col_for_inference = notnadata return lib.infer_dtype(col_for_inference)
Example #27
Source File: resample.py From Computable with MIT License | 5 votes |
def _take_new_index(obj, indexer, new_index, axis=0): from pandas.core.api import Series, DataFrame if isinstance(obj, Series): new_values = com.take_1d(obj.values, indexer) return Series(new_values, index=new_index, name=obj.name) elif isinstance(obj, DataFrame): if axis == 1: raise NotImplementedError return DataFrame(obj._data.take(indexer, new_index=new_index, axis=1)) else: raise NotImplementedError
Example #28
Source File: ols.py From Computable with MIT License | 5 votes |
def _prepare_data(self): """ Cleans the input for single OLS. Parameters ---------- lhs: Series Dependent variable in the regression. rhs: dict, whose values are Series, DataFrame, or dict Explanatory variables of the regression. Returns ------- Series, DataFrame Cleaned lhs and rhs """ (filt_lhs, filt_rhs, filt_weights, pre_filt_rhs, index, valid) = _filter_data(self._y_orig, self._x_orig, self._weights_orig) if self._intercept: filt_rhs['intercept'] = 1. pre_filt_rhs['intercept'] = 1. if hasattr(filt_weights,'to_dense'): filt_weights = filt_weights.to_dense() return (filt_lhs, filt_rhs, filt_weights, pre_filt_rhs, index, valid)
Example #29
Source File: ols.py From Computable with MIT License | 5 votes |
def beta(self): """Returns the betas in Series form.""" return Series(self._beta_raw, index=self._x.columns)
Example #30
Source File: ols.py From Computable with MIT License | 5 votes |
def p_value(self): """Returns the p values.""" return Series(self._p_value_raw, index=self.beta.index)