Hướng dẫn how do you convert a sparse matrix into a dense matrix in python? - làm thế nào để bạn chuyển đổi một ma trận thưa thớt thành một ma trận dày đặc trong python?

Tôi có một cơ sở dữ liệu SQLite chứa loại lược đồ sau:

termcount[doc_num, term , count]

Bảng này chứa các điều khoản với số lượng tương ứng của chúng trong tài liệu. giống

[doc1 , term1 ,12]
[doc1, term 22, 2]
.
.
[docn,term1 , 10]

Ma trận này có thể được coi là ma trận thưa thớt vì mỗi tài liệu chứa rất ít thuật ngữ sẽ có giá trị khác không.

Làm thế nào tôi sẽ tạo ra một ma trận dày đặc từ ma trận thưa thớt này bằng cách sử dụng Numpy vì tôi phải tính toán sự tương đồng giữa các tài liệu sử dụng sự tương đồng cosine.

Ma trận dày đặc này sẽ trông giống như một bảng có tài liệu là cột đầu tiên và tất cả các thuật ngữ sẽ được liệt kê là hàng đầu tiên. Và các ô còn lại sẽ chứa số lượng.

1 câu trả lời. Bạn có thể sử dụng hàm Todense [] hoặc ToArray [] để chuyển đổi ma trận CSR thành ma trận dày đặc.todense[] or toarray[] function to convert a CSR matrix to a dense matrix.

1 câu trả lời. Bạn có thể sử dụng hàm Todense [] hoặc ToArray [] để chuyển đổi ma trận CSR thành ma trận dày đặc.
>>> from scipy.sparse import csr_matrix
>>> import pandas as pd
>>> r = np.array[[0, 0, 1, 1, 2, 2, 2, 3, 4, 4, 5, 6, 6]]
>>> c = np.array[[0, 3, 4, 1, 3, 5, 6, 3, 1, 6, 0, 1, 3]]
>>> data = np.array[[1]*len[r]]
>>> X = csr_matrix[[data, [r, c]], shape=[7, 7]]
>>> X

>>> Y=X.todense[]
>>> Y
matrix[[[1, 0, 0, 1, 0, 0, 0],
        [0, 1, 0, 0, 1, 0, 0],
        [0, 0, 0, 1, 0, 1, 1],
        [0, 0, 0, 1, 0, 0, 0],
        [0, 1, 0, 0, 0, 0, 1],
        [1, 0, 0, 0, 0, 0, 0],
        [0, 1, 0, 1, 0, 0, 0]]]
>>> Z=X.toarray[]
>>> Z
array[[[1, 0, 0, 1, 0, 0, 0],
       [0, 1, 0, 0, 1, 0, 0],
       [0, 0, 0, 1, 0, 1, 1],
       [0, 0, 0, 1, 0, 0, 0],
       [0, 1, 0, 0, 0, 0, 1],
       [1, 0, 0, 0, 0, 0, 0],
       [0, 1, 0, 1, 0, 0, 0]]]

csr_matrix.todense [Order = none, out = none] [nguồn]#todense[order=None, out=None][source]#

Trả về một đại diện ma trận dày đặc của ma trận này.

Tham sốOrder {‘c,‘ f,}, tùy chọnorder{‘C’, ‘F’}, optional

Cho dù lưu trữ dữ liệu đa chiều trong thứ tự C [Row-Major] hoặc Fortran [Cột-Major] trong bộ nhớ. Mặc định là ‘không có, không cung cấp bảo đảm đặt hàng. Không thể được chỉ định kết hợp với đối số ra.

Outndarray, 2-D, tùy chọnndarray, 2-D, optional

Nếu được chỉ định, hãy sử dụng mảng này [hoặc numpy.matrix] làm bộ đệm đầu ra thay vì phân bổ một mảng mới để trả về. Mảng được cung cấp phải có hình dạng và dtype giống như ma trận thưa thớt mà bạn đang gọi phương thức.

ReturnSarrnumpy.Matrix, 2-Darrnumpy.matrix, 2-D

Một đối tượng ma trận NUMPY có cùng hình dạng và chứa cùng một dữ liệu được biểu thị bằng ma trận thưa thớt, với thứ tự bộ nhớ được yêu cầu. Nếu ra ngoài được thông qua và là một mảng [chứ không phải là numpy.matrix], nó sẽ được lấp đầy với các giá trị thích hợp và được trả lại trong một đối tượng numpy.matrix có chung bộ nhớ.

Mục tiêu công thức

Các đối tượng thưa thớt được 'nén' khi bất kỳ dữ liệu nào khớp với một giá trị cụ thể [giá trị NAN / Thiếu, mặc dù bất kỳ giá trị nào cũng có thể được chọn]. Một theo dõi đối tượng SparseIndex đặc biệt trong đó dữ liệu đã được 'sparsifie'.

Vì vậy, công thức này là một ví dụ ngắn về cách chuyển đổi DataFrame/Matrix thưa thớt thành Ma trận/DataFrame dày đặc. Bắt đầu nào.

Mục lục

  • Mục tiêu công thức
    • Các đối tượng thưa thớt được 'nén' khi bất kỳ dữ liệu nào khớp với một giá trị cụ thể [giá trị NAN / Thiếu, mặc dù bất kỳ giá trị nào cũng có thể được chọn]. Một theo dõi đối tượng SparseIndex đặc biệt trong đó dữ liệu đã được 'sparsifie'.
    • Vì vậy, công thức này là một ví dụ ngắn về cách chuyển đổi DataFrame/Matrix thưa thớt thành Ma trận/DataFrame dày đặc. Bắt đầu nào.
    • Mục lục
    • Bước 1 - Nhập thư viện

Các đối tượng thưa thớt được 'nén' khi bất kỳ dữ liệu nào khớp với một giá trị cụ thể [giá trị NAN / Thiếu, mặc dù bất kỳ giá trị nào cũng có thể được chọn]. Một theo dõi đối tượng SparseIndex đặc biệt trong đó dữ liệu đã được 'sparsifie'.

import pandas as pd

Vì vậy, công thức này là một ví dụ ngắn về cách chuyển đổi DataFrame/Matrix thưa thớt thành Ma trận/DataFrame dày đặc. Bắt đầu nào.

Vì vậy, công thức này là một ví dụ ngắn về cách chuyển đổi DataFrame/Matrix thưa thớt thành Ma trận/DataFrame dày đặc. Bắt đầu nào.

df = pd.DataFrame[{"A": pd.arrays.SparseArray[[0, 1, 0]]}]

Mục lục

Bước 1 - Nhập thư viện

Mục lục

df.sparse.to_dense[] print[df]

Bước 1 - Nhập thư viện

Bước 1 - Nhập thư viện

Bước 2 - Thiết lập dữ liệu

Scroll down to the ipython file to look at the results.

Làm thế nào để bạn chuyển đổi một ma trận thưa thớt thành một ma trận dày đặc?

1 câu trả lời. Bạn có thể sử dụng hàm Todense [] hoặc ToArray [] để chuyển đổi ma trận CSR thành ma trận dày đặc.use either todense[] or toarray[] function to convert a CSR matrix to a dense matrix.

Làm thế nào để bạn làm cho một ma trận dày đặc trong Python?

Một ma trận dày đặc được tạo bằng cách gọi ma trận chức năng.Các đối số xác định các giá trị của các hệ số, kích thước và loại [số nguyên, gấp đôi hoặc phức tạp] của ma trận.Kích thước là một tuple có chiều dài hai với kích thước ma trận.Số lượng hàng và/hoặc số lượng cột có thể bằng không.by calling the function matrix . The arguments specify the values of the coefficients, the dimensions, and the type [integer, double, or complex] of the matrix. size is a tuple of length two with the matrix dimensions. The number of rows and/or the number of columns can be zero.

Làm thế nào để bạn chuyển đổi một thưa thớt thành một ma trận?

S = thưa thớt [a] Chuyển đổi một ma trận đầy đủ thành dạng thưa thớt bằng cách vắt ra bất kỳ phần tử 0 nào.Nếu một ma trận chứa nhiều số không, việc chuyển đổi ma trận thành lưu trữ thưa thớt sẽ lưu bộ nhớ.S = thưa thớt [m, n] tạo ra một ma trận m -by -n tất cả không. converts a full matrix into sparse form by squeezing out any zero elements. If a matrix contains many zeros, converting the matrix to sparse storage saves memory. S = sparse[ m,n ] generates an m -by- n all zero sparse matrix.

Làm thế nào để bạn chuyển một ma trận thưa thớt trong Python?

Chuyển đổi của một ma trận thu được bằng cách thay đổi các hàng thành các cột và cột thành các hàng.Nói cách khác, chuyển vị của A [] [] [] có được bằng cách thay đổi [i] [j] thành [j] [i].changing rows to columns and columns to rows. In other words, transpose of A[][] is obtained by changing A[i][j] to A[j][i].

Bài Viết Liên Quan

Chủ Đề