이상한 형식의 숫자 데이터가 포함 된 CSV 파일에서 큰 데이터 프레임을 가져 왔습니다. 다음은 작업중인 데이터 프레임의 재현 가능한 예입니다.지저분한 데이터 프레임 열 서식 변경 R
df <- data.frame("r1" = c(1,2,3,4,5), "r2" = c(1,2.01,-3,"-","2,000"))
'r2'에는 음수 기호가있는 값이 들어 있습니다. "-", 0이있는 값은 대시로 표시됩니다 -. 이 지저분한 R2 칼럼에 대한 몇 가지 수치 해석을 실행하려면, 내가 수행해야합니다
- 가 교체 "-"제로가 "0"음의 값 앞에 음의 부호를 제거하기 위해 피하면서와.
- NA에 "2,000"과 같은 합법적 인 값을 강요하지 마십시오. 웬일인지, 다음 명령을 실행할 때 :
foo$row2<- as.numeric(sub("-",0,foo$row2))
R은 쉼표로 NAs 값을 강제 변환하므로 열의 데이터가 손상됩니다.
여기 foo$row2<- as.numeric(sub("-",0,foo$row2))
를 실행 한 후 출력의 예를 : 당신이 볼 수 있듯이
Warning message:
NAs introduced by coercion
r1 r2
1 1 1.00
2 2 2.01
3 3 3.00
4 4 0.00
5 5 NA
은 "2,000"NA에 강요했다. -3이 실수로 3 (대시가 제거됨)으로 변환되었습니다. 그러나 헤이, 최소한 우리는 3 열째의 "-"를 없애 버렸다! 행 5에서 쉼표가 제거되었는지
r1 r2
1 1 1.00
2 2 2.01
3 3 -3.00
4 4 0.00
5 5 2000
참고 :
는 여기에 생산 싶은 것이 궁극적으로합니다. r2 열은 sum(df$r2)
과 같은 명령을 실행할 수 있도록 포맷해야합니다.
그들은 거의 동등한 나에게 보인다. –