2011-09-07 11 views
7

R에서 C++ 로의 프로그램 (컴파일 및 실행에 충분하지 않음)의 일부를 이식하고 있습니다. 나는 R. 내가 온라인 참조를 사용하여 좋아했을에 익숙하지 않은,하지만 다음 라인으로 난처한 상황에 빠진했다 :R에서 음수 인덱스는 무엇을합니까?

cnt2.2<-cnt2[,-1] 

내가 추측하고있다 :

  1. cnt2는 2 차원 매트릭스
  2. 입니다 cnt2.2은 마침표 '.'로 선언 된 새로운 변수입니다. 알파벳 문자가 사용 된 것과 같은 방식으로 사용됩니다.
  3. <-는 (는) 할당 작업을 나타냅니다.
  4. [,-1]은 어레이의 일부를 액세스합니다. 나는 [,5]이 모든 행, 5 열만을 의미한다고 생각했습니다. 이것이 맞다면 -1이 무엇을 의미하는지 전혀 모른다.

답변

13

이는 수동 섹션 2.7에 덮여있다.

8

부정적인 지표는 첫 번째 열을 떨어 뜨리고 그래서 x[,-1] 지정은 (행 콤마 전에 먼저 측정하고, 열이 콤마 이후, 제 치수이다) ... 특정 요소 (오히려 고정 이하) 적하 지정. ?"[" (http://stat.ethz.ch/R-manual/R-devel/library/base/html/Extract.html)에서 : http://cran.r-project.org/doc/manuals/R-intro.html#Index-vectors

그것은 첫 열을 제외한 모든 행의 모든 ​​열을 지정 cnt2 객체에 부정적인 지표이다

For ‘[’-indexing only: ‘i’, ‘j’, ‘...’ can be logical 
      vectors, indicating elements/slices to select. Such vectors 
      are recycled if necessary to match the corresponding extent. 
      ‘i’, ‘j’, ‘...’ can also be negative integers, indicating 
      elements/slices to leave out of the selection. 
4

1) CNT2는 당신이 실제로 어떤 종류의 (아마도 매트릭스)의 2 차원 구조에서 제공하는 코드에서 2 차원 매트릭스

입니다.

2) cnt2.2는 마침표 '.'로 선언 된 새로운 변수입니다. 알파벳 문자가 사용 된 것과 같은 방식으로 사용됩니다.

수정.

3) < - 과제입니다.

수정.

4) [, -1]은 배열의 일부를 액세스합니다. 나는 [5]가 모든 행을 의미한다고 생각했다. 이것이 맞다면 -1이 무엇을 의미하는지 전혀 모른다.

[,-1] 1 열을 제외한 모든 열 를 선택한다. C++과는 달리 R의 인덱스는 0이 아닌 1부터 시작합니다.

+0

+1에서 색인 생성에 대한 의견은 +1합니다 (OP가 이미 알아 냈 으면 함) –