저는 R에 약간 익숙하며 데이터 프레임을 출력하는 함수를 사용하려고합니다. 중복 제거가 필요한 여러 데이터 프레임이 있습니다. 데이터 프레임의 각 레코드에는 인덱스 변수 (RecID)와 환자 ID (PatID)가 있습니다. 환자가 데이터 프레임에 여러 번 나열되면 가장 큰 레코드 RecID를 선택하려고합니다.출력 데이터 세트가있는 R 함수
나는이 데이터 프레임을 변경할 수 있도록하려면 :
PatID RecID
1 1
1 2
2 3
3 4
3 5
4 6
이 dataframe
PatID RecID
1 2
2 3
3 5
4 6
내가 성공적으로 dataframe을 중복 제거하려면 다음 코드를 사용할 수 있습니다 속으로.
df <- df[order(df$PatID, -df$RecID),]
df <- df[ !duplicated(df$PatID), ]
중복 코드 제거 스키마를 여러 데이터 프레임에 쉽게 적용 할 수 있도록이 코드를 사용하여 함수를 만들었습니다. 내가 코드 dedupit(df)
을 사용 넣으면
dedupit <- function(x) {
x <- x[order(x$PatID, -x$RecID),]
x <- x[ !duplicated(x$PatID), ]
}
그러나, 그것은 중복 제거 records.The 기능을 가진 새로운 안양 dataframe를 만들지 않습니다 출력되지 최종 dataframes 또는 중간 dataframes의 것이다. 함수 출력 데이터 프레임을 갖는 방법이 있습니까?
함수에서 돌아와야합니다. defn 함수의 마지막 줄에'return (x)'를 써라. – infominer
아하. 감사. 그것은 도움이되었다! – Darkong