Spec-Zone.ru › pandas 0.24

pandas.SparseSeries.to_coo

SparseSeries.to_coo(row_levels=(0, ), column_levels=(1, ), sort_labels=False) [source]

Создать scipy.sparse.coo_matrix из SparseSeries с MultiIndex.

Используйте row_levels и column_levels для определения координат строк и столбцов соответственно. row_levels и column_levels — это имена (метки) или номера уровней. {row_levels, column_levels} должны составлять разбиение имён (или номеров) уровней MultiIndex.

Параметры:
row_levels : tuple/list
column_levels : tuple/list
sort_labels : bool, default False

Отсортировать метки строк и столбцов перед формированием разреженной матрицы.

Возвращает:
y : scipy.sparse.coo_matrix
rows : list (row labels)
columns : list (column labels)

Примеры

>>> s = pd.Series([3.0, np.nan, 1.0, 3.0, np.nan, np.nan])
>>> s.index = pd.MultiIndex.from_tuples([(1, 2, 'a', 0),
                                        (1, 2, 'a', 1),
                                        (1, 1, 'b', 0),
                                        (1, 1, 'b', 1),
                                        (2, 1, 'b', 0),
                                        (2, 1, 'b', 1)],
                                        names=['A', 'B', 'C', 'D'])
>>> ss = s.to_sparse()
>>> A, rows, columns = ss.to_coo(row_levels=['A', 'B'],
                                 column_levels=['C', 'D'],
                                 sort_labels=True)
>>> A
<3x4 sparse matrix of type '<class 'numpy.float64'>'
        with 3 stored elements in COOrdinate format>
>>> A.todense()
matrix([[ 0.,  0.,  1.,  3.],
[ 3.,  0.,  0.,  0.],
[ 0.,  0.,  0.,  0.]])
>>> rows
[(1, 1), (1, 2), (2, 1)]
>>> columns
[('a', 0), ('a', 1), ('b', 0), ('b', 1)]

© 2008–2012, AQR Capital Management, LLC, Lambda Foundry, Inc. and PyData Development Team
Licensed under the 3-clause BSD License.
https://pandas.pydata.org/pandas-docs/version/0.24.2/reference/api/pandas.SparseSeries.to_coo.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API