홈>
userid및likeid1과 함께 n 명의 사용자와 m 개의 좋아요를위한좋아요데이터 프레임이 있습니다 :likeidm내 변수로. 특정 사용자 ID는 열 1 (Likes $userid)에 저장되며 사용자가 해당 유사 ID가있는 페이지를 좋아했는지 여부에 따라 셀에 1 또는 0이 포함됩니다.
library(Matrix)
Likes <- data.frame(userid=c("n1","n2"),
m1=c(0,1),
m2=c(0,0),
m3=c(0,0),
m4=c(1,0)
)
Likes [1,1:5]
userid m1 m2 m3 m4
1 n1 0 0 0 1
이제 희소 행렬을 만들고 싶습니다. 다음 코드에서 j를 어떻게 지정합니까? 기술적으로 id와 같은 것은 열에 없지만 이미 데이터 프레임에서 변수로 지정 되었기 때문에 그것이 올바르게 수행되지 않았다는 것을 알고 있습니다.
sM_Likes <- sparseMatrix(Likes, i=likes$userid, j=1,c(2:ncol(Likes)), x=1)
미리 감사합니다 (기본 질문에 사과드립니다).
- 답변 # 1
관련 자료
- python - 희소 행렬 만들기 - typeerror : __init __ ()은 2에서 5 개의 위치 인수를 취하지 만 6이 주어졌습니다
- neural network - bigbird 또는 sparse 자기주의 - 희소 행렬을 구현하는 방법은 무엇입니까?
- python - 열 그룹별로 희소 행렬 행 합산
- r - 거래 데이터를 희소 행렬로 변환
- matlab - 16 비트 이미지에서 계조 동시 발생 행렬 만들기
- r - 많은 변수에서 동시 발생 행렬 만들기 및 플로팅
- data.table - 트랜잭션 행에서 R로 행렬 작성
- python - 희소 행렬을 행으로 분할
- R로 행렬을 만드시겠습니까?
- python - 희소 행렬에서 일부 행을 선택한 다음 새 희소 행렬을 형성하는 방법
- swift - 회색조 매트릭스에서 CGImage/UIImage 생성
- python - CSV 내부의 데이터에서 행렬 만들기
- python - 여러 선형 희소 행렬 방정식 풀기 - "numpylinalgsolve"대 "scipysparselinalgspsolve"
- 파이썬에서 랜덤 스파 스 에르 미트 행렬을 생성하는 방법은 무엇입니까?
- python - 은밀한 희소 행렬 - typeerror : 유형에 대해 지원되는 변환이 없습니다 : (dtype ( '0'),)
- numpy - 비표준 대수 유사 객체에 대한 희소 행렬 연산을위한 파이썬 라이브러리가 있습니까?
- pandas 및 numpy로 Python에서 행렬 만들기
- numpy - 파이썬에서 JSON을 coo sparse matrix로 변환
- python - 팬더 df에서 행렬을 만들어 Disease_Symptom 간의 예측 표시
- python - numpy를 사용하여 대각선 행렬을 만들면 0 제곱 행렬이 반환됩니다
질문에서 설명한 것과 같이 (질문에서 편집 한) 객체를 구성하고 가짜 행을 추가하여 문제를 재현하려고 시도했습니다.
이 코드를 실행하면 다른 오류가 발생했습니다.
와이즈 비즈이 문제를 일으킨 것으로 생각한 의견에서 이것을 몇 번 언급했습니다. 당신은 당신의
의 사양을 수정 인수하고 이제 작동합니다 :)열 이름에 대한 주석에서 후속 질문이 있습니다. 나는 이것이 이것을 해결해야한다고 생각한다 :
devtools::install_github("ben519/mltools") require(mltools) dt <- data.table( intCol=c(1L, NA_integer_, 3L, 0L), realCol=c(NA, 2, NA, NA), logCol=c(TRUE, FALSE, TRUE, FALSE), ofCol=factor(c("a", "b", NA, "b"), levels=c("a", "b", "c"), ordered=TRUE), ufCol=factor(c("a", NA, "c", "b"), ordered=FALSE) ) sparsify(dt) sparsify(dt, sparsifyNAs=TRUE) sparsify(dt[, list(realCol)], naCols="identify") sparsify(dt[, list(realCol)], naCols="efficient")