本文整理汇总了Python中index.Index.index方法的典型用法代码示例。如果您正苦于以下问题:Python Index.index方法的具体用法?Python Index.index怎么用?Python Index.index使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类index.Index
的用法示例。
在下文中一共展示了Index.index方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Python代码示例。
示例1: Series
# 需要导入模块: from index import Index [as 别名]
# 或者: from index.Index import index [as 别名]
class Series(object):
def __init__(self, data=None, index=None, name=None, series=None):
'''
One-dimensional array with axis labels (including time series).
:param data: (*array_like*) One-dimensional array data.
:param index: (*list*) Data index list. Values must be unique and hashable, same length as data.
:param name: (*string*) Series name.
'''
if series is None:
if isinstance(data, (list, tuple)):
data = minum.array(data)
if index is None:
index = range(0, len(data))
else:
if len(data) != len(index):
raise ValueError('Wrong length of index!')
if isinstance(index, (MIArray, DimArray)):
index = index.tolist()
if isinstance(index, Index):
self._index = index
else:
self._index = Index.factory(index)
self._data = data
self._series = MISeries(data.array, self._index._index, name)
else:
self._series = series
self._data = MIArray(self._series.getData())
self._index = Index.factory(index=self._series.getIndex())
#---- index property
def get_index(self):
return self._index
def set_index(self, value):
self._index = Index(value)
self._series.setIndex(self._index.data)
index = property(get_index, set_index)
#---- values property
def get_values(self):
if isinstance(self._data[0], Date):
return miutil.pydate(self._data.aslist())
else:
return self._data
def set_values(self, value):
self._data = minum.array(value)
self._series.setData(self._data.array)
values = property(get_values, set_values)
#---- name property
def get_name(self):
return self._series.getName()
def set_name(self, value):
self._series.setName(value)
name = property(get_name, set_name)
#---- dtype property
def get_dtype(self):
return self.values.dtype
dtype = property(get_dtype)
def __getitem__(self, key):
if isinstance(key, Index):
key = key.data
elif isinstance(key, datetime.datetime):
key = miutil.jdatetime(key)
if isinstance(key, int):
if key < 0 or key >= self.__len__():
raise KeyError(key)
return self._series.getValue(key)
elif isinstance(key, (list, tuple, MIArray)):
if isinstance(key, MIArray):
key = key.aslist()
if isinstance(key[0], datetime.datetime):
key = miutil.jdatetime(key)
if isinstance(key[0], int):
r = self._series.getValues(key)
else:
r = self._series.getValueByIndex(key)
return Series(series=r)
elif isinstance(key, slice):
if isinstance(key.start, basestring):
sidx = self._index.index(key.start)
if sidx < 0:
sidx = 0
else:
sidx = 0 if key.start is None else key.start
if sidx < 0:
sidx = self.__len__() + sidx
if isinstance(key.stop, basestring):
eidx = self._index.index(key.stop)
#.........这里部分代码省略.........